我想构建一个dict,其中一个值是从另一个值构建的。你知道吗
我认为写作
d = {
'a':1,
'b':self['a']+1
}
但它并没有像预期的那样起作用:
>>> {'a':1, 'b':self['a']+1}
Traceback (most recent call last):
File "<stdin>", line 1, in ?
NameError: name 'self' is not defined
那么,如何才能实现Python的技巧呢?(我正在使用Python2.4
)
Tags:
如果只有两个值,请先计算a,然后将b作为单独的行相加。你知道吗
如果依赖关系更复杂,那么使用函数来提供值可能是值得的。你知道吗
Python2.7以后的版本有字典理解功能:
在前面的例子中,等效的是:
现在提供了iterable函数来生成值:
根据需要在函数中提供循环选项。你知道吗
不能引用尚未创建的词典。只需在创建字典之后分配额外的键:
或者,先将值设置为一个单独的变量,然后创建字典:
相关问题 更多 >
编程相关推荐