啊啊啊
i=1 j = 1 while 1: date='date'+str(i) goods='goods'+str(i) number='number'+str(i) money='number'+str(i) date_list = [] # 用于存放日期 goods = {} # 用于存放商品信息 number = {} # 用与存放数量 money = {} # 用于存放单价 date=input("请输入日期:") if date == 'm': break else: date_list.append(date) while 1: good_name=input("请输入商品的名字:") if good_name== 'm': print("输入结束!") break else: ikey='ikey'+str(j) goods[ikey]=good_name number_num=input('请输入商品数量:') number[ikey]=number_num money_mon=input('请输入商品的单价:') money[ikey]=money_mon print(goods[ikey],number[ikey],money[ikey]) j+=1 for a in range(i): a+=1 date='date'+str(a) goods = 'goods' + str(a) number = 'number' + str(a) money = 'money' + str(a) print(date) for b in range(j): b+=1 ikey='ikey'+str(b) print(goods[ikey],number[ikey],money[ikey]) print("清单显示完毕")
Traceback (most recent call last):
File "D:/python/学习过程/基于嵌套式字典 超市货物统计程序.py", line 70, in <module>
print(goods[ikey])
TypeError: string indices must be integers
不能实现功能,因为key会被无限更新
date = 'date' + str(1) goods = 'goods' + str(1) number = 'number' + str(1) money = 'money' + str(1) date='11.24' goods ={'ikey1':'牛奶','ikey2':'方便面','ikey3':'糖果'} number ={'ikey1':15,'ikey2':25,'ikey3':10} money ={'ikey1':15,'ikey2':25,'ikey3':10} date = 'date' + str(2) goods = 'goods' + str(2) number = 'number' + str(2) money = 'money' + str(2) goods ={'ikey1':'牛奶','ikey2':'方便面','ikey3':'糖果'} number ={'ikey1':10,'ikey2':10,'ikey3':2} money ={'ikey1':10,'ikey2':10,'ikey3':10} for b in range(3): b+=1 ikey='ikey'+str(b) print(goods[ikey],number[ikey],money[ikey])
D:\python\学习过程\venv\Scripts\python.exe D:/python/学习过程/遍历测试.py
牛奶 10 10
方便面 10 10
糖果 2 10
#不能实现循环 因为 没有遍历自增变量
date_list = [] # 用于存放日期 g_n_list=[0] goods = {} # 用于存放商品信息 number = {} # 用与存放数量 money = {} # 用于存放单价 i=0 while 1: date=input("请输入日期:") if date == 'm': break else: date_list.append(date) while 1: good_name=input("请输入商品的名字:") if good_name== 'm': print("输入结束!") break else: ikey='ikey'+str(i) goods[ikey]=good_name number_num=input('请输入商品数量:') number[ikey]=number_num money_mon=input('请输入商品的单价:') money[ikey]=money_mon print(goods[ikey],number[ikey],money[ikey]) # g=i+1 # print('有',g,'件商品') i+=1 g_n_list.append(i) print(date_list,g_n_list) for a in range(len(date_list)): print(date_list[a]) A_=g_n_list[a] B=a+1 B_=g_n_list[B] for b in range(A_,B_): ikey='ikey'+str(b) print(goods[ikey],number[ikey],money[ikey]) print("清单显示完毕")
请输入日期:11.24
请输入商品的名字:牛奶
请输入商品数量:15
请输入商品的单价:5.5
牛奶 15 5.5
请输入商品的名字:方便面
请输入商品数量:25
请输入商品的单价:4
方便面 25 4
请输入商品的名字:糖果
请输入商品数量:10
请输入商品的单价:12
糖果 10 12
请输入商品的名字:m
输入结束!
['11.24'] [0, 3]
请输入日期:12.25
请输入商品的名字:牛奶
请输入商品数量:25
请输入商品的单价:5.5
牛奶 25 5.5
请输入商品的名字:m
输入结束!
['11.24', '12.25'] [0, 3, 4]
请输入日期:m
11.24
牛奶 15 5.5
方便面 25 4
糖果 10 12
12.25
牛奶 25 5.5
清单显示完毕
浙公网安备 33010602011771号