【发布时间】:2014-05-02 12:35:22
【问题描述】:
我有这个代码:
result = []
for x in [10, 20, 30]:
for y in [2, 3, 4]:
if y > 0:
result.append(x ** y)
结果
[100, 1000, 10000, 400, 8000, 160000, 900, 27000, 810000]
我正在尝试将其转换为列表理解但没有运气(python 中的新功能)
这是我的尝试:
print [ x ** y if y > 0 for x in [10, 20, 30] for y in [2, 3, 4]]
但是声明有问题,任何帮助都将是最合适的。
错误:
File "<stdin>", line 1
print [ x ** y if y > 0 for x in [10, 20, 30] for y in [2, 3, 4]]
^
SyntaxError: invalid syntax
【问题讨论】:
标签: python list list-comprehension