【发布时间】:2018-02-25 12:45:30
【问题描述】:
我刚刚尝试了这样的列表理解
[i if i==0 else i+100for i in range(0,3)]
它有效,但是当我尝试类似的 dict 理解时,它会引发错误:
d={3:3}
{d[i]:0 if i==3 else d[i]:True for i in range(0,4) }
可能是什么原因?如何使用if else 使用字典理解?
由此产生的错误:
{d[i]:0 if i==3 else d[i]:True for i in range(0,4) }
^
SyntaxError: invalid syntax
注意:我在这里使用的示例只是一个随机示例,而不是我的实际代码。 我可以使用替代解决方案来做到这一点,但我现在只看 dict 理解来学习。
【问题讨论】:
标签: python list-comprehension dictionary-comprehension