我写了以下代码,结果如下SyntaxError: invalid syntax:
self.vec.append(v1) if v1 else pass
Run Code Online (Sandbox Code Playgroud)
我认为它会像这段代码一样:
if v1:
self.vec.append(v1)
Run Code Online (Sandbox Code Playgroud)
只是想知道为什么python在支持时不支持这种语法:
self.vec.append(v1) if v1 else 0
Run Code Online (Sandbox Code Playgroud)
append返回的None是NoneType.
>>> type([].append(420))
<class 'NoneType'>
Run Code Online (Sandbox Code Playgroud)
pass 仅用于流量控制(NOOP)且没有类型.
>>> type(pass)
Syntax Error
Run Code Online (Sandbox Code Playgroud)
三元声明要求:
object = object if BoolExpr else object
Run Code Online (Sandbox Code Playgroud)
pass不是object!
| 归档时间: |
|
| 查看次数: |
116 次 |
| 最近记录: |