python购物车实现的功能,python购物车程序实验总结

  python购物车实现的功能,python购物车程序实验总结

  

  免费学习推荐:python视频教程

  Python 基于文件操作实现购物车

  学习Python有一段时间了,想着需要找点东西写下来巩固基础。我看到了购物车,然后想知道我是否可以用我已经学会的知识来实现以下功能。然而,相对简单的实现没有任何意义。只需要几个循环和判断就能写出来,什么都不用。所以不知道能不能进一步修改,做个优化。刚学会的文件操作可以存储一些信息。所以,优化的思想是存在的。废话不多说,编码吧。

  # coding : utf-8 # author 3360 w _ UImportTime #获取当前时间函数,用于显示事务时间和当前时间def get _ time () 3360。

  now _ time=time . strftime( % y-% m-% d % h :% m :% S )

  Now _ time #定义中间媒体user _ information={ } user _ salary={ } admin _ information={ } shopping _ list=[]add _ product=[]shopping _ car=[]Print( * * 25 欢迎光临。True:时居中(0) * * * 25)

  打印(当前时间是: \ 033[32;1m % s \ 033[0m % get _ time()]

  Print(你是用户还是商家:\n 1。用户\n 2。商人’)

  而True:

  user_choose1=输入( : )

  #因为用户输入不可靠,下面就来说说如何判断用户输入信息!以下都是真的。

  if user_choose1.isdigit():

  用户选择1=int(用户选择1)

  如果用户选择1==1:

  而True:

  打印(请选择注册、登录或注销:\n 1。注册\n 2。登录\n 3。注销’)

  user_choose2=input( )

  if user_choose2.isdigit():

  用户选择2=int(用户选择2)

  如果用户选择2==1:

  用户名=输入(请输入用户名:)

  密码=输入(“请输入密码:”)

  user _ information[username]=password #将用户注册信息以字符串的形式存储在字典和文件中。因为写入模式会覆盖原始信息,所以我们选择通过追加来打开文件。

  with open(user_information , a ,encoding=utf-8) as f:

  f.write(str(用户信息))

  #判断输入的工资是否是纯数字,因为工资不可能是字母

  而True:

  薪金=输入(请输入薪金:)

  if salary.isdigit():

  薪金=int(薪金)

  User_salary[username]=salary #将用户输入的工资绑定到印度的两个用户名,登录查看用户的工资。

  与ope一起

  n("user_salary", 'a+', encoding="utf-8") as f:

   f.write(str(user_salary))

   break

   else:

   print("非法字符!请重新输入!")

   elif user_choose2 == 2:

   username_input = input("请输入用户名:")

   password_input = input("请输入密码:")

   with open("user_information", 'r+', encoding="utf-8") as f:

   data = f.read()

   # 使用eval函数将文件读取的字符串形式转换为为字典

   user_information = eval(data)

   if user_information[username_input] == password_input:

   print("登陆成功!")

   print("*" * 25 + "欢迎光临本店".center(0) + "*" * 25)

   # 获取用户工资

   with open("user_salary", 'r+', encoding="utf-8") as f:

   data1 = f.read()

   user_salary = eval(data1)

   print(f"你现在的工资为\033[32;1m{user_salary[username_input]}\033[0m")

   # 获取购物车的信息并打印

   with open("shopping_list", 'r+', encoding="utf-8") as f:

   data2 = f.read()

   shopping_list = eval(data2)

   while True:

   for item in enumerate(shopping_list):

   print(item)

   user_choose3 = input("老板买点啥:")

   if user_choose3.isdigit():

   user_choose3 = int(user_choose3)

   for i in range(0, len(shopping_list) + 1):

   if user_choose3 == i:

   shopping_car.append(shopping_list[user_choose3][0])

   shopping_time = get_time()

   print("购买\033[32;1m %s\033[0m* 1" % shopping_list[user_choose3][0])

   print("交易时间:\033[32;1m %s\033[0m* 1" % shopping_time)

   # 将用户购买的物品存入到购物车文件里,并且记录交易时间

   with open("shopping_car", 'a+', encoding="utf-8") as f:

   f.write(str(shopping_car))

   f.write(str(shopping_time))

   # 购买商品的花费,需要更新购买后用户的工资

   if user_salary[username_input] >= int(shopping_list[user_choose3][1]):

   user_salary[username_input] = user_salary[username_input] - int(

   shopping_list[user_choose3][1])

   print(f"剩余工资:\033[33;1m{user_salary[username_input]}\033[0m")

   # 购买后用户所剩下的工资重新写入到文件里

   with open("user_salary", 'r+', encoding="utf-8") as f:

   f.write(str(user_salary))

   while True:

   user_choose4 = input("您需要继续购买吗?\n 1.继续购物\n 2.退出\n")

   if user_choose4.isdigit():

   user_choose4 = int(user_choose4)

   if user_choose4 == 1:

   break

   else:

   print("*" * 25 + "购物车".center(0) + "*" * 25)

   print(shopping_car)

   print(

   f"剩余工资:\033[33;1m{user_salary[username_input]}\033[0m")

   exit()

   else:

   print("该用户不存在!")

   elif user_choose2 == 3:

   exit()

   else:

   print("输入错误,请重新输入!")

   elif user_choose1 == 2:

   # 这里设置商家是一个管理员的模式,所以商家不用注册直接登陆查看

   print("请先登录:")

   admin_input = input("请输入用户名:")

   admin_password_input = input("请输入密码:")

   with open("admin_information", 'r+', encoding="utf-8") as f:

   data = f.read()

   admin_information = eval(data)

   # 校验信息

   if admin_information[admin_input] == admin_password_input:

   print("*" * 25 + "欢迎进入管理系统".center(0) + "*" * 25)

   print("以下是现货架上商品有")

   with open("shopping_list", 'r+', encoding="utf-8") as f:

   data2 = f.read()

   shopping_list = eval(data2)

   for item in enumerate(shopping_list):

   print(item)

   while True:

   admin_choose = input("是否需要添加商品:\n 1.添加商品 \n 2. 退出 \n >>>:")

   if admin_choose.isdigit():

   admin_choose = int(admin_choose)

   if admin_choose == 1:

   add_product_name = input("请输入商品名:")

   add_product_price = input("请输入价格:")

   add_product.append(add_product_name)

   add_product.append(add_product_price)

   shopping_list.append(add_product)

   with open("shopping_list", 'r+', encoding="utf-8") as f:

   f.write(str(shopping_list))

   elif admin_choose == 2:

   print("感谢使用!")

   exit()

   else:

   print("输入错误")

   else:

   print("输入错误!")写到这,实现基本的功能还是没有问题的,可以将用户信息、商家信息等等等等存入文件里,下次再需要使用的时候直接从文件里调用出来,就不用像平常的运行一遍输入一遍啦,用户的工资也是可以保存的,商家可以像货架上添加商品。商家是作为管理员的角色,所以初始的账号密码是固定存在一个文件里。本来想添加一个修改商家信息,但是想想还是一样的操作,就直接省了这一步。

  

大量免费学习推荐,敬请访问python教程(视频)

  

以上就是讲解Python 基于文件操作实现购物车的详细内容,更多请关注盛行IT软件开发工作室其它相关文章!

  

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: