Python 词典分配

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

我正在尝试使用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 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]}