0

大多数来源在线调用=(和+=,-=等...)赋值运算符(用于python)。这在大多数语言中是有意义的,但在 python 中则不然。运算符接受一个或多个操作数,返回一个值,然后形成一个表达式。但是,在python中,赋值不是表达式,赋值不会产生值。因此,= 不能是运算符。

那么它到底是什么?在像 x = 0 这样的语句中,x 是标识符,0 是数字文字,但我不知道如何称呼“=”。

4

2 回答 2

1

我能够在官方 python 文档中找到正确的答案。= 和朋友被视为分隔符。来源:https ://docs.python.org/3/reference/lexical_analysis.html#delimiters

表达式的 python 文档参考没有将 = 定义为运算符,也没有定义为表达式。来源:https ://docs.python.org/3/reference/expressions.html

但是,它确实使用自己的生产规则定义了赋值语句,其中 = 明确包含在规则中。来源:https ://docs.python.org/3/reference/simple_stmts.html#assignment-statements

所以最终的答案是,根据官方消息,它是“分隔符”。

于 2019-06-25T15:26:53.500 回答
0

赋值符号的=行为类似于语句,而不是运算符。它支持链接作为语法的一部分,但不能用作操作(例如a = b = 0但不是if a = b:)。

它类似于语句的in一部分。for ... in ...:in是语句语法的一部分,它不是实际的in运算符。

于 2019-06-25T14:27:04.637 回答