前言:
普通运算符执行简单的分配工作。另一方面,inplace 运算符的行为类似于普通运算符,只是它们在可变和不可变目标的情况下以不同的方式运行。
- _add_方法进行简单的加法,接受两个参数,返回总和,并将其存储在另一个变量中,而不修改任何参数。
- 另一方面, iadd 方法也接受两个参数,但它通过将总和存储在其中来对传递的第一个参数进行就地更改。由于在此过程中需要对象突变,因此不可变目标(例如数字、字符串和元组)不应具有 iadd 方法。
- 普通运算符的“add()” 方法,实现“ a+b ”并将结果存储在提到的变量中。
- inplace 运算符的“iadd()” 方法,如果存在“ a+=b ”(即在不可变目标的情况下,它不存在),则实现“a+=b”并更改传递参数的值。但如果不是,则执行“a+b” 。
案例 1:不可变目标。
在不可变目标中,例如数字、字符串和元组。就地运算符的行为与普通运算符相同,即只进行赋值,不修改传递的参数。
# 用于演示不可变目标中的 inplace 和 normal 运算符之间区别的 python 代码 # 导入算子处理算子操作 import operator # 初始化值 x = 5 y = 6 a = 5 b = 6 # 使用 add() 添加传递的参数 z = operator.add(a,b) # 使用 iadd() 添加传递的参数 p = operator.iadd(x,y) # 打印修改后的值 print ("使用 normal 运算符添加后的值: ",end="") print (z) # 打印修改后的值 print ("使用 inplace 运算符添加后的值: ",end="") print (p) # printing value of first argument # value is unchanged print ("使用 normal 运算符的第一个参数的值: ",end="") print (a) # printing value of first argument # value is unchanged print ("使用 inplace 运算符的第一个参数的值: ",end="") print (x)
输出:
使用 normal 运算符添加后的值: 11
使用 inplace 运算符添加后的值: 11
使用 normal 运算符的第一个参数的值: 5
使用 inplace 运算符的第一个参数的值: 5
案例 2:可变目标
inplace 运算符在可变目标(例如列表和字典)中的行为与普通运算符不同。更新和分配都在可变目标的情况下执行。
# python 代码演示可变目标中的 inplace 和 normal 运算符之间的区别 # 导入算子处理算子操作 import operator # 初始化列表 a = [1, 2, 4, 5] # 使用 add() 添加传递的参数 z = operator.add(a,[1, 2, 3]) # 打印修改值 print ("使用 normal 运算符添加后的值: ",end="") print (z) # 第一个参数值的打印值不变 print ("使用 normal 运算符的第一个参数的值: ",end="") print (a) # 使用 iadd() 添加传递的参数执行 a+=[1, 2, 3] p = operator.iadd(a,[1, 2, 3]) # 打印修改值 print ("使用 inplace 运算符添加后的值: ",end="") print (p) # 第一个参数值的打印值已更改 print ("使用 inplace 运算符的第一个参数的值: ",end="") print (a)
输出:
使用 normal 运算符添加后的值: [1, 2, 4, 5, 1, 2, 3]
使用 normal 运算符的第一个参数的值: [1, 2, 4, 5]
使用 inplace 运算符添加后的值 [1, 2, 4, 5, 1, 2, 3]
使用 inplace 运算符的第一个参数的值: [1, 2, 4, 5, 1, 2, 3]
到此这篇关于python 运算符inplace 与standard 的文章就介绍到这了,更多相关python 运算符 内容请搜索<计算机技术网(www.ctvol.com)!!>以前的文章或继续浏览下面的相关文章希望大家以后多多支持<计算机技术网(www.ctvol.com)!!>!
需要了解更多python教程分享Python 运算符Inplace 与Standard ,都可以关注python教程分享栏目—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/pythontutorial/1239250.html