Создание корзины покупок в Python - PullRequest
2 голосов
/ 29 марта 2011

Я изучаю Python, и я пытаюсь сделать корзину (для практики).Но я застрял здесь:

# Vars
budget = 200; # Budget
total = 0; # Total price
prices = { # Price list
    "cola":22,
    "chips":18,
    "headset":800,
    "pencil":5
}
cart = [] # Shopping cart

while True:
    cmd = raw_input("Enter command: ");
    if cmd == "additem":

В цикле while (в частности, "if cmd ==" additem ") я хочу, чтобы пользователь ввел название элемента (из словаря цен) изатем он добавляет его в корзину. Однако я не уверен, как это сделать.

Ответы [ 3 ]

3 голосов
/ 29 марта 2011

Домашнее задание

Ваши структуры данных немного странные. Возможно, вы хотите, чтобы корзина представляла собой список кортежей или чего-то подобного, причем каждый кортеж представляет собой единицу, количество или даже единицу, количество, промежуточный итог. Тем не менее.

if cmd == "additem":
    item = raw_input("Enter item name: ")
    cart.append(item)

#at the end
for item in cart:
    print "Item: %s. Price: %s" % (item, prices[item])
1 голос
/ 29 марта 2011
# Vars
budget = 200; # Budget
total = 0; # Total price
prices = { # Price list
    "cola":22,
    "chips":18,
    "headset":800,
    "pencil":5
}
cart = [] # Shopping cart
cmd = raw_input("""
====Item=====Price====

    cola    :  22 $
    chips   :  18 $
    headset : 800 $
    pencil  :   5 $

Enter order:""")
while cmd in prices.keys():
    cart+=[(cmd,prices[cmd])]
    cmd = raw_input("Enter order: ")

if cmd not in ["","\t","\n"]:
    print cmd," is not available",

print"you cart contains :\n"
if cart != []:
    for item in cart:
        print item[0],"\t:",item[1]," $"
else:
    print "Nothing"

raw_input("\nPress enter to exit...")
1 голос
/ 29 марта 2011
# Vars
budget = 200; # Budget
total = 0; # Total price
prices = { # Price list
    "cola":22,
    "chips":18,
    "headset":800,
    "pencil":5
}
cart = [] # Shopping cart

input = ['']
while input[0] != 'quit':
    input = raw_input("Enter command: ").split()
    if input[0] == 'additem' and input[1] in prices:
        cart.append(input[1])
...