Python代码实现数学藏品抢购系统
Python代码实现数学藏品抢购系统
本代码实现了一个简单的数学藏品抢购系统,用户可以根据商品列表选择要购买的数学藏品,并进行模拟支付和库存更新。
# 导入库
import time
# 定义数学藏品商品类
class MathCollection:
def __init__(self, name, price, stock):
self.name = name # 商品名称
self.price = price # 商品价格
self.stock = stock # 商品库存
# 初始化数学藏品商品列表
math_collections = [
MathCollection('勾股定理证明书', 999, 10),
MathCollection('黄金分割尺', 299, 20),
MathCollection('圆周率计算器', 599, 15),
]
# 定义抢购函数
def buy_math_collection(index, num):
# 判断商品是否存在
if index >= len(math_collections):
print('商品不存在')
return False
# 判断商品库存是否充足
collection = math_collections[index]
if collection.stock < num:
print('商品库存不足')
return False
# 计算总价
total_price = collection.price * num
# 提示用户确认购买
print(f'您将购买{collection.name} x {num},总价为{total_price}元,请确认是否购买?(Y/N)')
answer = input()
# 根据用户选择进行购买或取消
if answer == 'Y':
# 模拟支付过程
print('正在支付中,请稍等...')
time.sleep(2)
# 更新商品库存
collection.stock -= num
# 提示购买成功
print('购买成功!')
return True
else:
print('已取消购买')
return False
# 测试
if __name__ == '__main__':
# 打印商品列表
print('数学藏品商品列表:')
for i, collection in enumerate(math_collections):
print(f'{i + 1}. {collection.name}(库存:{collection.stock},价格:{collection.price}元)')
# 用户输入选择的商品和数量
print('请输入要购买的商品编号和数量,用空格隔开:')
index, num = map(int, input().split())
# 进行抢购
buy_math_collection(index - 1, num)
使用方法:
- 运行代码
- 输入要购买的商品编号和数量,用空格隔开(例如:2 3 表示购买第二个商品,数量为3)
- 程序会提示确认购买,输入 Y 表示确认购买,输入其他字符表示取消购买
- 程序会模拟支付过程,支付成功后更新商品库存,并提示购买成功。如果商品不存在或库存不足,程序会提示相应的信息。
原文地址: https://www.cveoy.top/t/topic/lXck 著作权归作者所有。请勿转载和采集!