Python 賦值運算子

2021-10-09 12:46:04 字數 2029 閱讀 6139

賦值運算子用來把右側的值傳遞給左側的變數(或者常量);可以直接將右側的值交給左側的變數,也可以進行某些運算後再交給左側的變數,比如加減乘除、函式呼叫、邏輯運算等。

python 中最基本的賦值運算子是等號=;結合其它運算子,=還能擴充套件出更強大的賦值運算子。

#將字面量(直接量)賦值給變數

n1 =

100f1 =

47.5

s1 =

""#將乙個變數的值賦給另乙個變數

n2 = n1

f2 = f1

#將某些運算的值賦給變數

sum1 =25+

46sum2 = n1 %

6s2 =

str(

1234

)#將數字轉換成字串

s3 =

str(

100)

+"abc"

連續賦值

python 中的賦值表示式也是有值的,它的值就是被賦的那個值,或者說是左側變數的值;如果將賦值表示式的值再賦值給另外乙個變數,這就構成了連續賦值。請看下面的例子:

a = b = c = 100

具有右結合性,我們從右到左分析這個表示式:

最終結果就是,a、b、c 三個變數的值都是 100。

= 和 ==

= 和 == 是兩個不同的運算子,= 用來賦值,而 == 用來判斷兩邊的值是否相等,千萬不要混淆。

還可與其他運算子(包括算術運算子、位運算子和邏輯運算子)相結合,擴充套件成為功能更加強大的賦值運算子,如表 1 所示。擴充套件後的賦值運算子將使得賦值表示式的書寫更加優雅和方便。

運算子說 明

用法舉例

等價形式

=最基本的賦值運算

x = y

x = y

+=加賦值

x += y

x = x + y

-=減賦值

x -= y

x = x - y

*=乘賦值

x *= y

x = x * y

/=除賦值

x /= y

x = x / y

%=取餘數賦值

x %= y

x = x % y

**=冪賦值

x **= y

x = x ** y

//=取整數賦值

x //= y

x = x // y

&=按位與賦值

x &= y

x = x & y

|=按位或賦值

x |= y

x = x | y

^=按位異或賦值

x ^= y

x = x ^ y

<<=

左移賦值

x <<= y

x = x << y,這裡的 y 指的是左移的位數

>>=

右移賦值

x >>= y

x = x >> y,這裡的 y 指的是右移的位數

這裡舉個簡單的例子:

n1 =

100f1 =

25.5

n1 -=

80#等價於 n1=n1-80

f1 *= n1 -

10#等價於 f1=f1*( n1 - 10 )

print

("n1=%d"

% n1)

print

("f1=%.2f"

% f1)

執行結果為:

n1=20

f1=255.00

通常情況下,只要能使用擴充套件後的賦值運算子,都推薦使用這種賦值運算子。

但是請注意,這種賦值運算子只能針對已經存在的變數賦值,因為賦值過程中需要變數本身參與運算,如果變數沒有提前定義,它的值就是未知的,無法參與運算。例如,下面的寫法就是錯誤的:

n += 10
該表示式等價於 n = n + 10,n 沒有提前定義,所以它不能參與加法運算。

Python運算子 賦值運算子

賦值運算子與算數運算子有這個密不可分的關係,可以理解成是算數運算子在某種特定情況下的一種簡寫賦值運算子 說明舉例 展開形式 對應算數運算子寫法 簡單賦值運算子 x y x y 加賦值 也讀加等於 x y x x y 加賦值 也讀減等於 x y x x y 乘賦值 也讀乘等於 x y x x y 除賦...

賦值運算子

賦值運算子函式 include stdafx.h include class cmystring cmystring cmystring char pdata else cmystring cmystring const cmystring str cmystring cmystring cmyst...

賦值運算子

a 等 b 叫做賦值運算子,也是最基本的賦值運算子 int x 10 把10賦值給int型別的變數x。c 擴充套件的賦值運算子的特點 隱含了自動強制轉換。面試題 short s 1 s s 1 short s 1 s 1 請問上面的 哪個有問題?3 比較運算子 a b 無論運算子兩端簡單還是複雜最終...