a = 36
b = 69
c = 60
#簡單的賦值運算
c = a + b
print ("c 的值為:", c)
#加法賦值運算
c += a
print ("c 的值為:", c)
#乘法賦值運算
c *= a
print ("c 的值為:", c)
#除法賦值運算
c /= a
print ("c 的值為:", c)
#取模賦值運算
c = 12
c %= a
print ("c 的值為:", c)
#冪賦值運算
a=3
c **= a
print ("c 的值為:", c)
#取整除賦值運算
c //= a
print ("c 的值為:", c)
保存并運行程序,結果如圖2-7所示。
圖2-7 例2.7的程序運行結果
2.5.4 邏輯運算符
Python語言支持的邏輯運算符如表2-4所示。
表2-4 邏輯運算符
【例2.8】驗證軍隊的夜間口令和編號(源代碼\ch02\2.8.py)。
print ("開始驗證軍隊的夜間口令") #輸出提示消息
password=input("請輸入今天夜間的口令:") #使用input()函數接收輸入的信息
num=input("請輸入軍隊的編號:")
number=int(num) #將輸入的信息轉換為整數類型
if(password=="雞肋" and (number==1002 or number==1006)):
print ("恭喜您,口令正確!")
else:
print ("對不起,口令錯誤!")
a = 12 #12 =0000 1100
b = 6 #6= 0000 0110
c = 0
#按位與運算
c = a & b; #4 = 0000 0100
print ("c 的值為:", c)
#按位或運算
c = a | b; #14 = 0000 1110
print ("c 的值為:", c)
#按位異或運算
c = a ^ b; #10 = 0000 1010
print ("c 的值為:", c)
#按位取反運算
c = ~a; #-13 = 1000 1101
print ("c 的值為:", c)
#左移動運算
c = a << 2; #48 = 0011 0000
print ("c 的值為:", c)
#右移動運算
c = a >> 2; #3 = 0000 0011
print ("c 的值為:", c)
保存并運行程序,結果如圖2-9所示。
圖2-9 例2.9的程序運行結果
2.5.6 成員運算符
Python語言還支持成員運算符,其測試例中包含了一系列的成員,如字符串、列表、元組。成員運算符包括in和not in。例如,x in y表示:若x在y序列中,則返回True;x not in y表示:若x不在y序列中,則返回True。
【例2.10】使用成員運算符(源代碼\ch02\2.10.py)。
a ='蘋果'
b = '香蕉'
fruit = ['蘋果', '荔枝', '橘子', '橙子', '柚子' ];
#使用in 成員運算符
if ( a in fruit ):
print ("變量a 在給定的列表fruit 中")
else:
print ("變量a 不在給定的列表fruit 中")
#使用not in 成員運算符
if ( b not in fruit ):
print ("變量b 不在給定的列表fruit 中")
else:
print ("變量b 在給定的列表fruit 中")
#修改變量a 的值
a = '哈密瓜'
if ( a in fruit ):
print ("變量a 在給定的列表fruit 中")
else:
print ("變量a 不在給定的列表fruit 中")
a ='蘋果'
b ='蘋果'
#使用is 身份運算符
if ( a is b):
print ("a 和b 有相同的標識")
else:
print ("a 和b 沒有相同的標識")
#使用not is 身份運算符
if ( a not in b ):
print ("a 和b 沒有相同的標識")
else:
print ("a 和b 有相同的標識")
#修改變量a 的值
a = '香蕉'
if ( a is b):
print ("修改后的a 和b 有相同的標識")
else:
print ("修改后的a 和b 沒有相同的標識")
>>> def a(x,y): #定義一個函數
return x + y #返回參數的和
>>> print (a(3,4))
7
【例2.12】運算符的優先級(源代碼\ch02\2.12.py)。
a = 5
b = 8
c = 4
d = 2
e = 0
e = (a + b) * c / d #(13 *4 ) / 2
print ("(a + b) * c / d 運算結果為:", e)
e = ((a + b) * c) / d #(13 *4 ) /2
print ("((a + b) * c) / d 運算結果為:", e)
e = (a + b) * (c / d); #(13)* (4/2)
print ("(a + b) * (c / d) 運算結果為:", e)
e = a + (b * c) / d; #5 + (32/2)
print ("a + (b * c) / d 運算結果為:", e)