为什么表达式可以在函数调用中跨多行而不是赋值?

我刚刚意识到,当它作为参数传递给函数时,可以将语句扩展到多行:

print(1 == 
  1)

但是,在变量赋值期间做同样的事情会引发SyntaxError

x = 1 ==
  1

为什么第一个示例有效,但第二个示例产生 a SyntaxError


白板的微信
浏览 177回答 2
2回答

扬帆大鱼

Python 将左方括号、大括号和圆括号识别为表示语句未完成。因此,允许函数调用“自然地”跨越行。这个解析器公约不适用于在有表情不是一个需要平衡的封闭标点符号。请注意,字符串也不能跨越线边界。

慕斯709654

另一种方法是使用连续字符 (\),如...x = 1 == \   1
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python