• Python【英雄购买界面】


    要求:设计一个程序,完成(英雄)商品的购买(界面就是第一天打印的界面)
    展示商品信息(折扣)->输入商品价格->输入购买数量->提示付款
    输入付款金额->打印购买小票(扩展)

    代码如下(简单版本):

    1. print(" 英雄商城购买英雄 ")
    2. print("英雄购买票据")
    3. print("~*"*20)
    4. print("编号 姓名 昵称 价格 库存 描述")
    5. print("1 李青 盲僧 6300 99+ 我用双手成就你的梦想")
    6. print("2 阿狸 九尾妖狐 6300 99+ 我们去找点儿真正的乐子吧")
    7. name = str(input("请输入你要购买的英雄(编号or姓名or=昵称):"))
    8. if name == "1" or name == "李青" or name == "盲僧":
    9. print("\n")
    10. print("\t\t英雄信息\n\n")
    11. print("编号 姓名 昵称 价格 库存 描述")
    12. print("1 李青 盲僧 6300 99+ 我用双手成就你的梦想")
    13. price = int(input("请输入你购买英雄的价格:"))
    14. num = int(input("请输入你购买英雄的数量:"))
    15. pay = int(input("请付款,输入你的付款金额:"))
    16. print("\t购买票据\n")
    17. print("购买成功:李青\n")
    18. print("购买金额:%s\n" %pay)
    19. print("购买成功,退出英雄商城")
    20. else:
    21. print("\n")
    22. print("\t\t英雄信息\n\n")
    23. print("编号 姓名 昵称 价格 库存 描述")
    24. print("2 阿狸 九尾妖狐 6300 99+ 我们去找点儿真正的乐子吧")
    25. price = int(input("请输入你购买英雄的价格:"))
    26. num = int(input("请输入你购买英雄的数量:"))
    27. pay = int(input("请付款,输入你的付款金额:"))
    28. print("\t购买票据\n")
    29. print("购买成功:阿狸\n")
    30. print("购买金额:%s\n" %pay)
    31. print("购买成功,退出英雄商城")

    代码如下(改进后):

    1. def display_hero_info():
    2. print(" 英雄商城购买英雄 ")
    3. print("编号 姓名 昵称 价格 库存 描述")
    4. print("1 李青 盲僧 6300 99+ 我用双手成就你的梦想")
    5. print("2 阿狸 九尾妖狐 6300 99+ 我们去找点儿真正的乐子吧")
    6. def get_hero_details(hero):
    7. print("\n\t\t英雄信息\n\n")
    8. print("编号 姓名 昵称 价格 库存 描述")
    9. print(f"{hero['number']} {hero['name']} {hero['nickname']} {hero['price']} {hero['stock']} {hero['description']}")
    10. def print_purchase_receipt(hero, price, quantity, payment):
    11. total_price = price * quantity
    12. change = payment - total_price
    13. print("\t购买票据\n")
    14. print(f"购买成功:{hero['name']}\n")
    15. print(f"购买金额:{payment}\n")
    16. print("商品信息:")
    17. print(f"姓名:{hero['name']}")
    18. print(f"单价:{hero['price']} 元")
    19. print(f"购买数量:{quantity}")
    20. print(f"总价:{total_price} 元")
    21. print(f"付款金额:{payment} 元")
    22. print(f"找零:{change} 元\n")
    23. print("购买成功,退出英雄商城")
    24. heroes = [
    25. {
    26. 'number': 1,
    27. 'name': '李青',
    28. 'nickname': '盲僧',
    29. 'price': 6300,
    30. 'stock': '99+',
    31. 'description': '我用双手成就你的梦想'
    32. },
    33. {
    34. 'number': 2,
    35. 'name': '阿狸',
    36. 'nickname': '九尾妖狐',
    37. 'price': 6300,
    38. 'stock': '99+',
    39. 'description': '我们去找点儿真正的乐子吧'
    40. }
    41. ]
    42. display_hero_info()
    43. print("\n")
    44. hero_name = input("请输入你要购买的英雄(编号/姓名/昵称):")
    45. selected_hero = None
    46. for hero in heroes:
    47. if str(hero['number']) == hero_name or hero['name'] == hero_name or hero['nickname'] == hero_name:
    48. selected_hero = hero
    49. break
    50. if selected_hero is not None:
    51. get_hero_details(selected_hero)
    52. price = int(input("请输入你购买英雄的价格:"))
    53. quantity = int(input("请输入你购买英雄的数量:"))
    54. payment = int(input("请付款,输入你的付款金额:"))
    55. print_purchase_receipt(selected_hero, price, quantity, payment)
    56. else:
    57. print("输入有误,请重新运行程序并输入正确的编号、姓名或昵称")


     

  • 相关阅读:
    Spring Boot工程开发流程
    HTTPS 的加密流程
    OpenStack学习系列之十二:安装ceph并对接OpenStack
    Java日期类汇总
    Linux简介
    Vue2:组件及组件通信
    git清除历史提交记录保持本地文件不变
    Util应用框架 UI 开发快速入门
    在linux上登录oracle服务器,将库中表导出为dump文件
    企业架构LNMP学习笔记17
  • 原文地址:https://blog.csdn.net/miss_copper/article/details/133798884