我们可以使用if-else这样:statement if condition else statement
但是这里有一些问题我无法理解为什么?
如果我运行count += 1 if True else l = []
(已定义计数),则引发错误:
File "<ipython-input-5-d65dfb3e9f1c>", line 1
count += 1 if True else l = []
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)不能在其他地方分配价值吗?
运行时count += 1 if False else l.append(count+1)
(注意:count = 0,l = []),会出现错误:
TypeError Traceback (most recent call last)
<ipython-input-38-84cb28b02a03> in <module>()
----> 1 count += 1 if False else l.append(count+1)
TypeError: unsupported operand type(s) for +=: 'int' and 'NoneType'
Run Code Online (Sandbox Code Playgroud)而l的结果是[1]
.
同样的条件,如果我使用if-else块,则没有错误.你能解释一下它的区别吗?