Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 09.10.2019
Сообщений: 12

Поломал голову над магазином на python

27.04.2020, 19:49. Показов 486. Ответов 1

Студворк — интернет-сервис помощи студентам
Доброго времени суток всем кто посетил эту ветку форума.

Нам дали задание сделать какой-нибудь сложный проект на Python с использование операторов if , elif , else.
Я решил взять и сделать магазин продуктов нечего сложного думал я . В итоге мне нужно чтоб человек из списка выбирал продукту которые ему нужны и они сохранялись где то чтоб потом можно было вывести продуты и цену.
Застрял с корзиной покупок , не хватает знаний придумать как все это будет сохранятся
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
product = ["1)хлеб" , "2)молоко" , "3)сахар" , "4)яйца" , "5)чай черный" , "6)чай зеленый"]
ovoshi = ["1)лук" , "2)огурцы" , "3)помидоры" , "4)картошка", "5)морковка", "6)свекла"]
fructi = ["1)яблоки" , "2)бананы" , "3)грушы" , "4)персики" , "5)вишня" , "6)виноград"]
def magazin ():
     print("Добро пожаловать в наш магазин " "'Быстрые покупки'" )
     print ("Я вертуальный консультан Гоша щас я вам выведу наш список выберите один из пунктов указав его цифру")
     print ( "1)product" )
     print ( "2)ovoshi" )
     print ( "3)fructi" )
     spisok = int(input("Укажите пожалуйста цифру списка")) 
     if spisok == 1 :
        print (product)
        print ("вы Что то хотите купить из это списка ?")
 
        vibor1 = input("Да   или  Нет . Напиши пожалуйста  ")
        if vibor1 == "да" :
             print ("Выберите продукт")
             print (product [0])
             print (product [1])
             print (product [2]) 
             print (product [3])
             print (product [4])
             print (product [5])
             korzina()
             
        else :
            magazin()
        
    
     elif spisok == 2 :
        print(ovoshi)
     else :
        print(fructi)
    
magazin ()
Вот весь код сижу и думаю как мне сохранять product 0 допустим потом перезапустить цикл и заново из 1 списка выбрать продукт и чтоб он добавился к предыдущему не заменив его .
и все как бы это я хотел сделать через def чтоб можно его было применять и в списке 2\3.
Спасибо за уделенное время
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.04.2020, 19:49
Ответы с готовыми решениями:

Поломал голову над SQL запросом из 5-ти таблиц. Возможно ли это?
Всем привет. Есть 3 основные таблицы: customers, subscribers, contacts. Также 2 вспомогательные таблицы customers_contacts,...

Ломаю голову над логикой
Доброе время суток Появилось интересное задание, не хватает опыта решить. Есть таблица access, подключенная к интерфейсу. Задание:...

Ломаю голову над этим...
Привет всем =) Есть код, работает но есть два НО ))... если сообщений 0, выводим серый конвертик :) Если больше 0 выводим красный...

1
 Аватар для Semen-Semenich
5234 / 3479 / 1175
Регистрация: 21.03.2016
Сообщений: 8,306
27.04.2020, 20:39
не лучшая идея использовать рекурсию. лучше цикл while ( может я захочу 1500 раз что то покупать а глубина рекурсии это не позволит). сохранять как в реальной жизни в магазине. складывать покупки в корзину.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
def magazin (lst):
    print(*lst)
    print ("вы Что то хотите купить из это списка ?")
    vibor1 = input("Да   или  Нет . Напиши пожалуйста  ")
    if vibor1 == "Нет":
        return False
    merchandise = int(input("Выберите номер продукта: "))
    index = merchandise -1
    korzina(lst[index])
    return True
        
def korzina(merchandise):
    chip.append(merchandise)
 
product = ["1)хлеб" , "2)молоко" , "3)сахар" , "4)яйца" , "5)чай черный" , "6)чай зеленый"]
ovoshi = ["1)лук" , "2)огурцы" , "3)помидоры" , "4)картошка", "5)морковка", "6)свекла"]
fructi = ["1)яблоки" , "2)бананы" , "3)грушы" , "4)персики" , "5)вишня" , "6)виноград"]
chip = []
 
print('''Добро пожаловать в наш магазин  ''Быстрые покупки'' \n"Я виртуальный консультан Гоша
 щас я вам выведу наш список выберите один из пунктов указав его цифру''')
 
while True:
    print ( "\n1)product\n2)ovoshi\n3)fructi\n" )
    spisok = int(input("Укажите пожалуйста цифру списка "))
    if spisok == 1:
        flag = magazin(product)
    elif spisok == 2:
        flag = magazin(ovoshi)
    elif spisok == 3:
        flag = magazin(fructi)
    else:
        print('номер набран неверно!')
    if not flag:
        print('Good bye')
        break
    
print('Вы купили - ', *chip)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.04.2020, 20:39
Помогаю со студенческими работами здесь

Ломаю голову над задачей
В общем в программировании полный ноль. Буду очень благодарен. Спасибо :) Условие во вложении.

Всю голову сломал над сплайнами
Ребят! Помогите плиз! Нужно составить программу для сплайна n-ого порядка, определить порядок коэфициентов, нарисовать... Для кубического...

Ломаем голову над видеокартой! Нужен совет знатока!
Приветствую всех уважаемых знатоков! Ломаем уже который день голову, что может быть с видеокартой и как лечить, проблема очень интересная:...

Весь день ломаю голову над QProcess, не стартует скрипт
Всем привет. Весь день ломаю голову над такой проблемой... С Qt работаю совсем недавно, так что не судите строго! Пишу программу, смысл...

Python в голову не лезет!
Python в голову никак не лезет, просто не понять учебник... Подскажите пожалуйста способы решения моей проблемы... ЗЫ Вопрос глуп(я мог...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru