Sign up Free. Don't forget to check out our challenges, lessons, solve and learn series and more ...

Code Snippet

#Task - first test the program by inputting "001"
#Add 5 more products with details to the list
#Create a main menu that allows a customer to 1. Browse Products 2. View Basket 
#Note: Add the products selected (for viewing) by the user to another list called "basket"
#print the basket in the "View Basket" sub

import sys
#this is a list that contains product informaton
product = ["001", "Iphone", "£1000", "002", "Samsung", "£2000", "003", "Toshiba", "£1500"]
basket=[] #created an empty list called basket
def mainmenu():
 while True:
   print("""=========MAIN MENU==============
            1 - Browse Products in our store
            2 - View Basket
            3 - Checkout
            4 - Quit
   choice=int(input("Enter choice:"))
   if choice==1:
   elif choice==2:
   elif choice==3:
   elif choice==4:
        print("Please make a valid selection")
def browseproducts():
  print("======BROWSE PRODUCTS IN OUR STORE==============")
  #stores whether the product has been found
  found= False
  #asks the user to enter a product code
  product_code=input("Enter the product code of an item: ")

  #a loop that will repeat for the length of the list
  for x in range(0,len(product)):
      #checks if the product code entered matches the current element of the list being checked
      if product[x] == product_code:
  	#if it is it prints the name and cost
          print("Product Name:", product[x + 1])
          print("Product Cost:", product[x + 2])
          print("This item has been added to your viewing basket")
  	#sets found to true as the product is found
          found = True    
  #after the loop checks if the product was not found
  if found==False:
      #if it wasn't found it says product not found
      print("Product not found")
def viewbasket():
 print("===============Your Basket======================")
 print("Your basket contains the following items:")
 for items in basket:

def checkout():
  #note: this will only acquire the first two in the basket, for all in the basket, a loop is required
  total_cost = 0
  for items in basket:
    total_cost = total_cost + extract_cost(items[1]) #this sends the items(just the £ in the list) to function extract_cost and that function simply uses basic string manipulation to get rid of the first character, namely the £
  print("Your total checkout cost is: £", total_cost)

#create a function that takes the parameter "money_in_pounds" - this will be passed from the checkout function
def extract_cost(money_in_pounds): 
    return int(money_in_pounds[1:]) #this function is given the items from checkout() (so £900 and £700 etc and it strips the first character away i.e gets rid of the £)


Try it yourself