python - 如何阅读此 python 代码?变量 1 = 变量 2 == 变量 3

标签 python

我正在努力理解这代表什么

var1 = var2 == var3

我的猜测是这等同于:

if (var2 == var3):
     var1 = var2

最佳答案

赋值 var1 = var2 == var3 更像这样:

if var2 == var3:
    var1 = True
else:
    var1 = False

如果您在 REPL 上计算表达式 var2 == var3,您将得到 TrueFalse,具体取决于它们比较是否相等。在 Python 中,您可以将任何表达式分配给一个变量,以便在您的示例中将结果值分配给 var1。

在 Python 中,a == b 是一个表达式,而赋值 a = b 是一个语句。在许多语言中,两者都是表达式 - 例如在 Javascript 中,您可以这样做(尽管风格不是很好):

a == (b = c)

在 Python 中是不允许的(SyntaxError):

a == (b = c)

争议PEP 572引入了新的赋值运算符 :=,它是一个表达式。

关于python - 如何阅读此 python 代码?变量 1 = 变量 2 == 变量 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52157604/

相关文章:

Python串行写入功能不起作用

python - 如何修改 sns.histplot 中的核密度估计线

python - 将 Python 字典用于 CX_ORACLE 的 SQL INSERT 语句

python - 为 jython 脚本创建可执行文件

python - 如何使用 BeautifulSoup 从网页中获取整个正文文本?

python - 如何使用 Fabric 将目录复制到远程计算机?

python - 如何根据行级别上某些元素与其他列名称的相似性来更新 pandas 列单元格值

python - 为文本挖掘创建词汇字典

python - python读取数据的高效方法

python - 如何为我的 REST 客户端生成 WSDL 文件?