2015-04-20 5 views
-1

Прежде всего, я полностью noob в питоне и программировании, так что я просто пытаюсь что-то поймать здесь и там и улучшить как можно больше. У меня есть этот кусок кода:python - выберите из списка вещей

print ('\n') 
country = '' 
province = '' 
gstTax = 0.05 
hrmTax = 0.13 
otherTax = gstTax + 0.06 
car = 30000.42 
shoes = 333.24 
laptop = 1000.98 

print 'Car added to the basket, price: {0:.2f} $'.format(car) 
print 'Shoes added to the basket, price: {0:.2f} $'.format(shoes) 
print 'Laptop added to the basket, price: {0:.2f} $'.format(laptop) 
orderTotal = car + shoes + laptop 
print ('\n') 

country = str(raw_input('Country residence? ')).capitalize() 
if country == 'Canada': 
    province = str(raw_input('Which province? ')).capitalize() 
    if province == 'Alberta': 
     print 'Your final payment: ', (orderTotal + gstTax), '$' 
    elif province == 'Ontario' or province == 'New Brunswick' \ 
     or province == 'Nova Scotia': 
     print 'Your final payment: ', (orderTotal + hrmTax), '$' 
    else: 
     print 'Your final payment: ', (orderTotal + otherTax), '$'  
else: 
    print 'Your final payment: ', (orderTotal), '$' 
print 'Transaction ended, thank you for your purchase' 

В основном то, что я хотел бы добавить к этому является своего рода отбор перед покупкой (то есть: Вы выбрали ноутбук продукт стоит это много, или вы выбрали продукт «обувь» и так далее). Я знаю, что есть списки, но я не знаю и все же понимаю их для использования. Возможно, может быть, кто-то может указать мне в правильном направлении.

+0

https://docs.python.org/2/tutorial/datastructures.html – MattDMo

ответ

2

Что вы можете сделать, это добавить каждый элемент, который был добавлен в корзину, в itemsInBasketList таким образом, чтобы вы могли пропустить, распечатать элемент и добавить цену товара в общую сумму всего за один раз. Это тип цикла for будет проходить через каждый элемент в списке и иметь элемент, удерживающий значение, которое вы можете использовать. Другой способ (который, вероятно, вы, возможно, более знакомы), - это указания. Таким образом, у вас есть индекс, и вы получаете доступ к элементу списка в этом индексе и получаете его таким образом. Оба выполняют одно и то же, одно проще писать и работать, чем другое.

print ('\n') 
country = '' 
province = '' 
gstTax = 0.05 
hrmTax = 0.13 
otherTax = gstTax + 0.06 
car = 30000.42 
shoes = 333.24 
laptop = 1000.98 
itemsInBasket = [] 
itemsInBasket.append('Car added to the basket, price: {0:.2f} $'.format(car)) 
itemsInBasket.append('Shoes added to the basket, price: {0:.2f} $'.format(shoes)) 
itemsInBasket.append('Laptop added to the basket, price: {0:.2f} $'.format(laptop)) 

orderTotal = 0 
for item in itemsInBasket: 
    print item 
    if 'Car' in item: 
     orderTotal += car 
    elif 'Shoes' in item: 
     orderTotal += shoes 
    elif 'Laptop' in item: 
     orderTotal += laptop 

country = str(raw_input('Country residence? ')).capitalize() 
if country == 'Canada': 
    province = str(raw_input('Which province? ')).capitalize() 
    if province == 'Alberta': 
     print 'Your final payment: ', (orderTotal + gstTax), '$' 
    elif province == 'Ontario' or province == 'New Brunswick' \ 
     or province == 'Nova Scotia': 
     print 'Your final payment: ', (orderTotal + hrmTax), '$' 
    else: 
     print 'Your final payment: ', (orderTotal + otherTax), '$'  
else: 
    print 'Your final payment: ', (orderTotal), '$' 
print 'Transaction ended, thank you for your purchase' 
Смежные вопросы