python可以从列表理解中创建一个字典吗? [英] Can python create a dictionary from a list comprehension?

查看:83
本文介绍了python可以从列表理解中创建一个字典吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述




我正在尝试使用列表将对象列表转换为字典

理解。


类似


entries = {}

[entries [int(d.date.strftime(''%m'')) )] = d.id]链接中的d]


当我尝试这样做时,我一直都会遇到错误。可能吗?请

字典对象有一个等同于[] .append的方法吗?也许一个

lambda?


感谢您的帮助!

Erik

Hi,

I''m trying to turn o list of objects into a dictionary using a list
comprehension.

Something like

entries = {}
[entries[int(d.date.strftime(''%m''))] = d.id] for d in links]

I keep getting errors when I try to do it. Is it possible? Do
dictionary objects have a method equivalent to [].append? Maybe a
lambda?

Thanks for your help!
Erik

推荐答案

5月27日下午1:55,erikcw< erikwickst ... @ gmail.comwrote:
On May 27, 1:55 pm, erikcw <erikwickst...@gmail.comwrote:




我正在尝试使用列表将对象列表转换为字典

理解。


类似


entries = {}

[entries [int(d.date.strftime(''%m''))] = d.id] for d in links]


当我尝试这样做时,我一直都会遇到错误。可能吗?请

字典对象有一个等同于[] .append的方法吗?也许一个

lambda?


感谢您的帮助!

Erik
Hi,

I''m trying to turn o list of objects into a dictionary using a list
comprehension.

Something like

entries = {}
[entries[int(d.date.strftime(''%m''))] = d.id] for d in links]

I keep getting errors when I try to do it. Is it possible? Do
dictionary objects have a method equivalent to [].append? Maybe a
lambda?

Thanks for your help!
Erik



试试...


[条目.__ setitem __(int(d.date.strftime(''%m''))],d.id)

链接]


顺便说一下......我也很好奇。我用''dir(dict)''找了一个

的方法,可以做我们想要的和宾果游戏!


~Sean

try...

[entries.__setitem__(int(d.date.strftime(''%m''))], d.id) for d in
links]

btw...I was curious of this too. I used ''dir(dict)'' and looked for a
method that might do what we wanted and bingo!

~Sean


erikcw schrieb:
erikcw schrieb:




我'我试图用列表将对象列表变成字典

理解。


类似


entries = {}

[entries [int(d.date.strftime(''%m''))] = d.id] for d in links]


当我尝试这样做时,我一直都会遇到错误。可能吗?请

字典对象有一个等同于[] .append的方法吗?也许一个

lambda?


感谢您的帮助!

Erik

Hi,

I''m trying to turn o list of objects into a dictionary using a list
comprehension.

Something like

entries = {}
[entries[int(d.date.strftime(''%m''))] = d.id] for d in links]

I keep getting errors when I try to do it. Is it possible? Do
dictionary objects have a method equivalent to [].append? Maybe a
lambda?

Thanks for your help!
Erik



通常是dict(whatEver)会做的;-)


示例:


a = [1,2 ,3,4,5,6,7,8,9,10]

aDict = dict(x中的[(x,x + 1),如果x%2 = = 0])


打印aDict

normally a dict(whatEver) will do ;-)

Example:

a = [1,2,3,4,5,6,7,8,9,10]

aDict = dict([(x,x+1) for x in a if x%2==0])

print aDict


27 mai,22:55,erikcw< erikwickst。 .. @ gmail.comwrote:
On 27 mai, 22:55, erikcw <erikwickst...@gmail.comwrote:




我正试图把对象列表变成一个字典使用清单

理解。


类似


entries = {}

[entries [int(d.date.strftime(''%m''))] = d.id] for d in links]


我一直遇到错误试着去做。可能吗?请

字典对象有一个等同于[] .append的方法吗?也许一个

lambda?


感谢您的帮助!

Erik
Hi,

I''m trying to turn o list of objects into a dictionary using a list
comprehension.

Something like

entries = {}
[entries[int(d.date.strftime(''%m''))] = d.id] for d in links]

I keep getting errors when I try to do it. Is it possible? Do
dictionary objects have a method equivalent to [].append? Maybe a
lambda?

Thanks for your help!
Erik



entries = dict([(int(d.date.strftime(''%m'')),d.id)for d in links])


随着Python2.4及更高版本你可以使用生成器表达式

entries = dict((int(d.date.strftime(''%m'')),d。 id)for d in links)

问候,

Pierre

entries = dict([ (int(d.date.strftime(''%m'')),d.id) for d in links] )

With Python2.4 and above you can use a "generator expression"

entries = dict( (int(d.date.strftime(''%m'')),d.id) for d in links )
Regards,
Pierre


这篇关于python可以从列表理解中创建一个字典吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆