Python 词典分配
我正在尝试使用listim为每个数字制作字典 我想要d={'1':2,4,5,'2':1,'3':4,(…等等)} 我的代码是(我找不到错误,但可能是关于字典):Python 词典分配,python,python-3.x,dictionary,Python,Python 3.x,Dictionary,我正在尝试使用listim为每个数字制作字典 我想要d={'1':2,4,5,'2':1,'3':4,(…等等)} 我的代码是(我找不到错误,但可能是关于字典): a=1 dic={} 一会儿 甚至更短: dic = {} for k,v in listim: dic[k] = int(v) 让我们从使用列表作为工厂的集合中使用defaultdict: dic = {k:int(v) for k,v in listim} 输出: from collections import def
a=1
dic={}
一会儿
甚至更短:
dic = {}
for k,v in listim:
dic[k] = int(v)
让我们从使用列表作为工厂的集合中使用defaultdict
:
dic = {k:int(v) for k,v in listim}
输出:
from collections import defaultdict
d = defaultdict(list)
listim=[['1' ,'2'], ['3' , '4'], ['1', '5'], ['4', '1']]
for i in listim:
d[i[0]].append(int(i[1]))
dict(d)
这个d={'1':2,4,5,'2':1,'3':4…
没有任何意义。请更好地解释。您的示例输出不是有效的Python文本,并且不清楚您想要什么。我投票结束这个问题,因为所需的结果不是有效的Python。此输出与d={'1':2,4,5,'2':1,'3':4,(…等等)不匹配
同意,但我假设OP需要每个键的值列表,而此方法提供了这一点。我认为OP请求for循环中的另一行:d[I[1]].append(int(I[0]))
dic = {k:int(v) for k,v in listim}
from collections import defaultdict
d = defaultdict(list)
listim=[['1' ,'2'], ['3' , '4'], ['1', '5'], ['4', '1']]
for i in listim:
d[i[0]].append(int(i[1]))
dict(d)
{'1': [2, 5], '3': [4], '4': [1]}