<分区>
我在想是否可以在列表理解中编写 ifs 和 elifs 以及 elses 并指定如果该表达式为真我们需要做什么。我尝试了以下方法,但没有用:
print(list(x for x in range(1,101) if x%3 == 0 print("Fizz")))
我正在使用 Python 3.3.4。
<分区>
我在想是否可以在列表理解中编写 ifs 和 elifs 以及 elses 并指定如果该表达式为真我们需要做什么。我尝试了以下方法,但没有用:
print(list(x for x in range(1,101) if x%3 == 0 print("Fizz")))
我正在使用 Python 3.3.4。
最佳答案
你可以在 if
的 Truthy 部分或 else
的 Truthy 部分写另一个 if
条件,像这样
print(["FizzBuzz" if x%15 == 0 else "Fizz" if x%3 == 0 else "Buzz" if x % 5 == 0 else x for x in range(1,101)])
可读版本:
print(["FizzBuzz"
if x%15 == 0
else
"Fizz"
if x%3 == 0
else
"Buzz"
if x % 5 == 0
else
x
for x in range(1,101)])
关于Python - 在列表理解中使用 if、elif 和 else 及其各自的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22115540/