很难描述我的问题,所以让我来描述一下情景和我所拥有的:
listofkeys=[]
listofvalues=[]
for it in practice_list:
it1= it[0:5]
it2= it[8:19]
listofkeys.append(it1)
listofvalues.append(it2)
di = dict(zip(listofkeys, listofvalues))
出于安全原因,这会打印一些我无法显示的内容,但对于practice_列表中的原始字符串,有重复的名称,并且具有不同的值,例如:[“apple是绿色的”、“apple是红色的”、“banana是黄色的”…]。当我通过索引将这个列表与listofnames和listofcolors分开,然后压缩到一个字典中时,它基本上会输出:{'apple':'red','banana':yellow'…}。for循环似乎正在覆盖另一个值,对吗?我怎样才能阻止这一切,让字典打印出{'apple':'green'、'red'、'banana':yellow'…}
没有;循环将每个键值对存储到
listofkeys
和listofvalues
中,因此没有问题但是,
dict
每个键只能有一个值,并且它的键必须是唯一的。当dict
构造函数在zip
ped列表中运行时,它按顺序一次分配一个键。如果一个键出现多次,那么每次遇到它时,它的值都会被替换确保将first值用于给定键的最简单方法是按相反顺序遍历列表(例如,通过向
zip
提供列表的reversed()
版本)相关问题 更多 >
编程相关推荐