GitHub里标星20.6K的项目!!
arrow_forward
第一件事第一!*
未括号的“赋值表达式”(使用walrus运算符)在顶层受到限制,因此SyntaxError在a := "wtf_walrus"第一个代码段的语句中受到限制。用括号括起来可以按预期工作并分配a。
与往常一样,=不允许对包含运算符的表达式加括号。因此,中的语法错误(a, b = 6, 9)。
Walrus运算符的语法形式为NAME:= expr,其中NAME是有效标识符,并且expr是有效表达式。因此,不支持可重复打包和拆包,这意味着。
(a := 6, 9)等价于((a := 6), 9)并最终等于(a, 9) (其中a'的值为6')
同样,(a, b := 16, 19)等效于(a, (b := 16), 19)3元组。