Home > Software engineering >  python shopping cart help needed
python shopping cart help needed

Time:08-07

im new do python and doing a shopping cart project for practice but running into an issue with my code

shopping_list = [] # make this an empty list

dairy_cat = [['1','Milk', '$2.30'],['2','Butter', '$4.50'],['3','Eggs' ,'$3.40'],['4','cheese_slices', '$3.15'],['5','Evaporated_Milk_Creamer', '$1.40'],['6','Milo ','$12.50'],['7','Biscuits' ,'$5.30'],['8','Yogurt', '$0.95']]

total price = []

def dairy_List():

    print()

    print("------ Dairy LIST ------")
    for i in dairy_cat:
        print("* "   i[0],' ' ,end=' ')
        print(i[1],end=' ')
        print(i[2])
    item = input("Enter the item you wish to add to the shopping cart: ")
    quantity = int(input('how many do you want?'))
    while quantity > 0:
        for i in dairy_cat:
            if item in i[1]:
                shopping_list.append(item)
                total_price.append(i[2])
                print(item   " has been added to the shopping list.")
            else:
                print('you did not enter a vaild selection')
        quantity -=1

I expected that when I input Milk that the output will be 'Milk has been added to your shopping list' and milk being appended to the shopping_list list and its price being added to the total_price list. However, this is how it runs:

Enter the item you wish to add to the shopping cart: Milk

how many do you want?2

Milk has been added to the shopping list.

you did not enter a vaild selection

you did not enter a vaild selection

you did not enter a vaild selection

Milk has been added to the shopping list.

you did not enter a vaild selection

you did not enter a vaild selection

you did not enter a vaild selection

Milk has been added to the shopping list.

you did not enter a vaild selection

you did not enter a vaild selection

you did not enter a vaild selection

Milk has been added to the shopping list.

you did not enter a vaild selection

you did not enter a vaild selection

you did not enter a vaild selection

No error messages and the same happens with all other inputs.

CodePudding user response:

please change your code like this:

shopping_list = [] # make this an empty list

dairy_cat = [['1','Milk', '$2.30'],['2','Butter', '$4.50'],['3','Eggs' ,'$3.40'],['4','cheese_slices', '$3.15'],['5','Evaporated_Milk_Creamer', '$1.40'],['6','Milo ','$12.50'],['7','Biscuits' ,'$5.30'],['8','Yogurt', '$0.95']]

total_price = []

def dairy_List():

    print()

    print("------ Dairy LIST ------")
    for i in dairy_cat:
        print("* "   i[0],' ' ,end=' ')
        print(i[1],end=' ')
        print(i[2])
    item = input("Enter the item you wish to add to the shopping cart: ")
    quantity = int(input('how many do you want?'))
    valid = False # add a variable to check valid
    while quantity > 0:
        for i in dairy_cat:
            if item == i[1]:
                shopping_list.append(item)
                total_price.append(i[2])
                print(item   " has been added to the shopping list.")
                valid = True
                break
        quantity -=1
    if valid == False: # only display once
        print('you did not enter a vaild selection')
        

dairy_List()
  • Related