import os
import pickle
查看手机信息的函数
def query_phone(type):
# phone_list = [{'name': 'vivo9', 'price': '1200', 'count': '30'},
# {'name': 'iphone6', 'price': '2000', 'count': '55'},
# {'name': 'iphone6s', 'price': '2200', 'count': '120'},
# {'name': 'iphone7', 'price': '4000', 'count': '80'},
# {'name': 'iphone7s', 'price': '4200', 'count': '90'},
# {'name': 'iphone8', 'price': '5200', 'count': '70'}]
for x in range(0, len(phone_list)):
phone = phone_list[x]
name = phone['name']
if type == 1:
price = phone['price']
count = phone['count']
print('序号:%s 产品名称:%s 产品价格:%s 产品库存:%s' % (x+1, name, price, count))
else:
print('序号:%s 产品名称:%s' % (x+1, name))
购买手机的函数
def buy_phone():
if len(phone_list) <= 0:
print('当前无商品信息!')
return
print('1.选择序号查看手机详情:')
print('2.返回')
num = int(input('请选择您的操作:'))
while num not in range(1, 3):
num = int(input('选项有误,请重选:'))
if num == 1:
index = int(input('请输入查看的产品序号:'))
while index not in range(0, len(phone_list)):
index = int(input('序号有误,请重选:'))
phone = phone_list[index]
print('序号:%s 产品名称:%s 产品价格:%s 产品库存:%s' % (index, phone['name'], phone['price'], phone['count']))
print('1.购买')
print('2.返回')
num = int(input('请选择:'))
while num not in range(1, 3):
num = int(input('选择错误,请重选:'))
if num == 1:
count = phone['count']
count = count - 1
if count == 0:
print('%s 已售罄,请及时补货!' % phone['name'])
phone_list.remove(phone)
else:
phone['count'] = count
return
else:
return
更改产品信息
def update_phone():
print('1.添加新产品')
print('2.修改原有产品')
print('3.返回')
num = int(input('请选择您的操作:'))
while num not in range(1, 4):
num = int(input('选项错误,请重选'))
if num == 1:
name = input('请输入添加的产品名称:')
price = input('请输入添加的产品价格:')
count = int(input('请输入添加的产品库存量:'))
while count <= 0:
count = int(input('库存量不能小于1,请重新输入:'))
phone = {'name': name, 'price': price, 'count': count}
phone_list.append(phone)
save()
elif num == 2:
if len(phone_list) <= 0:
print('当前无商品信息!')
return
query_phone(1)
index = int(input('请输入要修改的产品序号:'))
while index not in range(0, len(phone_list)):
index = int(input('序号有误,请重选:'))
phone = phone_list[index]
old_name = phone['name']
phone['name'] = input('请输入修改后的名称(%s):' % old_name)
phone['price'] = input('请输入修改后的价格(%s):' % phone['price'])
count = int(input('请输入修改后的库存量(%s):' % phone['count']))
while count <= 0:
count = int(input('库存不能小于1,请重新输入:'))
phone['count'] = count
print('修改成功!')
save()
else:
return
声明大列表,存储所有手机信息
[{‘name’:’iPhone8’,’price’:’1999’,’count’:’1’},{‘name’:’iPhone8’,’price’:’1999’,’count’:’1’}]
def save():
with open('data.txt', 'wb') as f:
pickle.dump(phone_list, f)
if os.path.exists('data.txt'):
with open('data.txt', 'rb') as f:
phone_list = pickle.load(f)
else:
phone_list = []
while True:
print('1.查看所有手机品牌')
print('2.更改产品信息')
print('3.移除产品信息')
print('4.退出程序')
num = int(input('选择您的操作:'))
while num not in range(1, 5):
num = int(input('选项错误,请重选:'))
if num == 1:
query_phone(2)
buy_phone()
elif num == 2:
update_phone()
elif num == 3:
print('移除产品信息')
else:
break