日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

Python?運(yùn)算符Inplace?與Standard?_python

作者:海擁 ? 更新時(shí)間: 2022-11-08 編程語言

前言:

普通運(yùn)算符執(zhí)行簡單的分配工作。另一方面,Inplace 運(yùn)算符的行為類似于普通運(yùn)算符,只是它們在可變和不可變目標(biāo)的情況下以不同的方式運(yùn)行。?

  • _add_方法進(jìn)行簡單的加法,接受兩個(gè)參數(shù),返回總和,并將其存儲在另一個(gè)變量中,而不修改任何參數(shù)。
  • 另一方面,?iadd?方法也接受兩個(gè)參數(shù),但它通過將總和存儲在其中來對傳遞的第一個(gè)參數(shù)進(jìn)行就地更改。由于在此過程中需要對象突變,因此不可變目標(biāo)(例如數(shù)字、字符串和元組)不應(yīng)具有?iadd?方法
  • 普通運(yùn)算符的“add()”?方法,實(shí)現(xiàn)“?a+b?”并將結(jié)果存儲在提到的變量中。
  • Inplace 運(yùn)算符的“iadd()”?方法,如果存在“?a+=b?”(即在不可變目標(biāo)的情況下,它不存在),則實(shí)現(xiàn)“a+=b”并更改傳遞參數(shù)的值。但如果不是,則執(zhí)行“a+b”?。

案例 1不可變目標(biāo)。?

在不可變目標(biāo)中,例如數(shù)字、字符串和元組。就地運(yùn)算符的行為與普通運(yùn)算符相同,即只進(jìn)行賦值,不修改傳遞的參數(shù)。

# 用于演示不可變目標(biāo)中的 Inplace 和 Normal 運(yùn)算符之間區(qū)別的 Python 代碼

# 導(dǎo)入算子處理算子操作
import operator

# 初始化值
x = 5
y = 6
a = 5
b = 6

# 使用 add() 添加傳遞的參數(shù)
z = operator.add(a,b)

# 使用 iadd() 添加傳遞的參數(shù)
p = operator.iadd(x,y)

# 打印修改后的值
print ("使用 normal 運(yùn)算符添加后的值: ",end="")
print (z)

# 打印修改后的值
print ("使用 Inplace 運(yùn)算符添加后的值: ",end="")
print (p)

# printing value of first argument
# value is unchanged
print ("使用 normal 運(yùn)算符的第一個(gè)參數(shù)的值: ",end="")
print (a)

# printing value of first argument
# value is unchanged
print ("使用 Inplace 運(yùn)算符的第一個(gè)參數(shù)的值: ",end="")
print (x)

輸出:

使用 normal 運(yùn)算符添加后的值: 11
使用 Inplace 運(yùn)算符添加后的值: 11
使用 normal 運(yùn)算符的第一個(gè)參數(shù)的值: 5
使用 Inplace 運(yùn)算符的第一個(gè)參數(shù)的值: 5

案例 2可變目標(biāo)?

Inplace 運(yùn)算符在可變目標(biāo)(例如列表和字典)中的行為與普通運(yùn)算符不同。更新和分配都在可變目標(biāo)的情況下執(zhí)行。

# Python 代碼演示可變目標(biāo)中的 Inplace 和 Normal 運(yùn)算符之間的區(qū)別

# 導(dǎo)入算子處理算子操作
import operator

# 初始化列表
a = [1, 2, 4, 5]

# 使用 add() 添加傳遞的參數(shù)
z = operator.add(a,[1, 2, 3])

# 打印修改值
print ("使用 normal 運(yùn)算符添加后的值: ",end="")
print (z)

# 第一個(gè)參數(shù)值的打印值不變
print ("使用 normal 運(yùn)算符的第一個(gè)參數(shù)的值: ",end="")
print (a)

# 使用 iadd() 添加傳遞的參數(shù)執(zhí)行 a+=[1, 2, 3]
p = operator.iadd(a,[1, 2, 3])

# 打印修改值
print ("使用 Inplace 運(yùn)算符添加后的值: ",end="")
print (p)

# 第一個(gè)參數(shù)值的打印值已更改
print ("使用 Inplace 運(yùn)算符的第一個(gè)參數(shù)的值: ",end="")
print (a)

輸出:

使用 normal 運(yùn)算符添加后的值: [1, 2, 4, 5, 1, 2, 3]
使用 normal 運(yùn)算符的第一個(gè)參數(shù)的值: [1, 2, 4, 5]
使用 Inplace 運(yùn)算符添加后的值 [1, 2, 4, 5, 1, 2, 3]
使用 Inplace 運(yùn)算符的第一個(gè)參數(shù)的值: [1, 2, 4, 5, 1, 2, 3]

原文鏈接:https://juejin.cn/post/7142775960851447816

欄目分類
最近更新