小编pod*_*fan的帖子

Python 列表理解的误解

这个例子似乎有问题:

item = [x**2 if x %2 == 0 for x in range(10)]
Run Code Online (Sandbox Code Playgroud)

但我可以这样写:

item = [x**2 if x % 2 == 0 else x**3 for x in range(10)]
Run Code Online (Sandbox Code Playgroud)

或者:

item = [x**2 for x in range(10) if x % 2 == 0]
Run Code Online (Sandbox Code Playgroud)

这里的顺序有多重要,为什么在第一个例子中我不能在没有 'else' 的情况下使用 'if'?

python list-comprehension

2
推荐指数
1
解决办法
36
查看次数

标签 统计

list-comprehension ×1

python ×1