Python中变量连续两次赋值的含义及与单次赋值的差异解析
问题解答
连续两次赋值的含义
Python 中的赋值运算符=是右结合的,连续赋值语句会按照从右到左的顺序执行:
- 首先计算最右侧表达式
"%s/" % base_iri的值,也就是给原base_iri末尾拼接一个斜杠,生成新的字符串 - 将这个新字符串赋值给中间的
base_iri变量 - 再将同一个新字符串赋值给最左侧的
base_iri变量
这种连续两次给同一个变量赋值的写法没有特殊作用,基本可以判定是代码作者的手误产生的冗余代码。
改写为单次赋值的运行差异
两种写法的运行结果完全一致。
两次赋值操作针对的是同一个变量,写入的也是同一个计算结果,不管重复赋值多少次,最终base_iri存储的都是末尾带斜杠的新值,和单次赋值的效果没有任何区别,唯一的差异只是冗余写法多了一次无意义的变量写入操作,对业务逻辑无任何影响。
内容的提问来源于stack exchange,提问作者lamename
相关产品推荐
相关产品推荐

