解释python dict方法返回的值

时间:2014-10-23 06:54:08

标签: python

有人可以向我解释以下python代码行返回的内容吗?我是python的新手

V[i].meesageout=\
dict([(x, array([1,1]))\
for x in V[i].neighbors]) 

1 个答案:

答案 0 :(得分:1)

该行不会返回任何内容。它为V[i].mesageout分配了一个新词典。字典的密钥取自V[i].neighbors,所有值均为array([1, 1])(大概是numpy个数组?)


此外,如果你是python的新手,请注意格式可怕的行。这有效:

V[i].messageout = dict((x, array([1, 1])) for x in V[i].neighbors)

或者如果你需要换行,只需换行。不要使用\,因为当有一个未闭合的括号,括号或括号时,python会自动继续行。:

V[i].messageout = dict((x, array([1, 1]))
                       for x in V[i].neighbors)

最后,在python2.7上,你可以使用字典理解

V[i].messageout = {x: array([1, 1]) for x in V[i].neighbors}