Форум сайта python.su
0
Вообщем суть такая сделал я половину задания с горем по полам
вообще плохо понимаю, занятия у нас дистанционные поэтому не очень хорошо вникаю в предмет. Буду благодарен за решения лабы или помощи с объяснениями. Лабу я прекрипляю.
Прикреплённый файлы:
lr_2_variant_2.py (10,7 KБ)
Офлайн
568
То что ты прикрепил - исполняемый файл питона. Т.е. насколько я понимаю, это уже некое решение. А где же само задание?
Офлайн
0
Там задание в файле верху красным написано.
Офлайн
43
2. Создайте функцию, которая рассчитывает минимальную цену принтера (МФУ) заданного произодителя. Сохраните эти данные в словарь, где ключом будет название произодителя. Выведите содердимое словаря на экран в порядке позрастания минимальной цены.Находим минимальную цену принтера заданного производителя, записываем(цену?) в словарь, а что сортировать там, если в нем одно значение?
Офлайн
0
Рад бы это сделать но не понимаю.( Буду благодарен если расскажите как это сделать.
sergeek
Офлайн
43
hosumutasда я про то что условие задачи неверное
Рад бы это сделать но не понимаю.( Буду благодарен если расскажите как это сделать.
какой смысл сортировать словарь из одного элемента Создайте функцию, которая рассчитывает минимальную цену принтера (МФУ)уточните у того, кто дал вам это заданиезаданноговсех произодителей.
Офлайн
0
sergeekНе все так и надо) Я видел другие делали типа получается выводит на экран (Хотите увидеть минимальную цену на принтер samsung например и он выводит)
Офлайн
43
_parsed = [] _min_dict = {} def _parse_source_data(): for cell in source_data: splitted = cell.split('\t') vendor = splitted[1].split()[0] price = float(splitted[3].replace(',','.').replace(' ','')) name = splitted[4] if name.startswith("Многофункциональное") or name.startswith('МФУ'): _parsed.append((vendor, price, name)) def get_printer_price(vendor): price_list = [(vendor_, price, name) for vendor_, price, name in _parsed if vendor == vendor_.lower()] for vendor, price, name in sorted(price_list ,key=lambda tp:tp[1]): print('{} | price {}'.format(name,price)) def get_min_price(vendor): if not _min_dict.get(vendor): try: _min_dict[vendor] = min([price for vendor_, price, name in _parsed if vendor_.lower() == vendor]) except ValueError: print('net takogo') for vendor, price in sorted([(key, _min_dict[key]) for key in _min_dict]): print('min price of {} is {}'.format(vendor,price)) interact = {'1':get_printer_price, '2':get_min_price} def main(): _parse_source_data() while True: select = input('4to nado?\n1: get pricelist of selected vendor\n2: get min price of selected vendor\n>>') try: interact[select](input('vendor?').lower()) except KeyError: print('1 ili 2') if __name__ == '__main__': main()
Отредактировано sergeek (Ноя. 21, 2012 15:21:28)
Офлайн