運算符和表達(dá)式
上節(jié)課回顧
上節(jié)課我們學(xué)習(xí)了變量的相關(guān)知識炬藤,(創(chuàng)建變量晾捏,訪問變量以及變量的命名規(guī)則)。
這節(jié)課我們來學(xué)習(xí)運算符和表達(dá)式穿撮。
程序語言的最大作用就是將數(shù)據(jù)經(jīng)過處理缺脉、運算后痪欲,轉(zhuǎn)換成有用的信息供我們使用。Python程序語言有不同種類的運算符攻礼,可以和變量一起組成表達(dá)式业踢,然后進(jìn)行運算。
01.表達(dá)式
表達(dá)式由操作數(shù)和運算符組成
操作數(shù):包括變量礁扮、數(shù)值和字符知举。如-1中的1,1+1中的1和1太伊,i+2中的i和2等雇锡;
運算符:包括算數(shù)運算符、賦值運算符僚焦、邏輯運算符和比較運算符等锰提。
02.算數(shù)運算符
是完成基本的算術(shù)運算使用的符號,用來處理四則運算
運算符 | 運算方式 | 含義 | 示例 |
---|---|---|---|
+ | 加 | 10+20=30 | |
- | 減 | 30-10=20 | |
* | 乘 | 2*5=10 | |
/ | 除 | 10/20=0.5 | |
// | 整除 | 舍棄余數(shù)芳悲,返回除法的整數(shù)部分(商) | 11/2=5 |
% | 取余 | 只要余數(shù)欲账,返回除法的余數(shù) | 11%2=1 |
** | 冪 | 幾次方的意思,指數(shù)運算 | 3**3=27 |
1.1算數(shù)運算符的優(yōu)先級
- 和數(shù)學(xué)中的運算符的優(yōu)先級一致芭概,在python中進(jìn)行數(shù)學(xué)計算時,同樣也是:
》先乘除后加減
》同級運算符是從左至右計算
》可以使用()調(diào)整計算的優(yōu)先級 - 以下表格的算數(shù)優(yōu)先級由高到低順序排練
運算符 | 描述 |
---|---|
** | 冪(最高優(yōu)先級) |
*/%// | 乘惩嘉、除罢洲、取余、取整 |
+文黎、- | 加法惹苗、減法 |
例如:
?2+3*5=17
?(2+3)*5=25
?2*3+5=11
?2*(3+5)=16
?2*(12+56)/8 #有括號優(yōu)先
a = 21
b = 10
c = 0
c = a + b
print("1 c 的值為:", c)
c = a - b
print("2 c 的值為:", c)
c = a * b
print("3 c 的值為:", c)
# 除法 / 總是返回一個浮點數(shù)
c = a / b
print("4 c 的值為:", c)
c = a % b
print("5 c 的值為:", c)
c = a // b
print("6 c 的值為:", c)
c = a - b * a
print("7 c 的值為:", c)
c = a * (b - b)
print("8 c 的值為:", c)
03.賦值運算符
在 Python 中,使用 = 可以給變量賦值
賦值運算符可以結(jié)合算數(shù)運算符一起使用耸峭,可以用變量作為操作數(shù)桩蓉,把運算后的結(jié)果再賦值給變量。
number = 13 #賦值給number的變量值為13
number = number+30 #將變量number的值’13‘加30得到43劳闹,再賦值給變量number保存
- 在算術(shù)運算時院究,為了簡化代碼的編寫,Python 還提供了一系列的 與 算術(shù)運算符 對應(yīng)的 賦值運算符
- 注意:賦值運算符中間不能使用空格
運算符 | 描述 | 實例 |
---|---|---|
= | 簡單的賦值運算符 | c = a + b 將 a + b 的運算結(jié)果賦值為 c |
+= | 加法賦值運算符 | c += a 等效于 c = c + a |
-= | 減法賦值運算符 | c -= a 等效于 c = c - a |
/= | 除法賦值運算符 | c /= a 等效于 c = c / a |
*= | 乘法賦值運算符 | c *= a 等效于 c = c * a |
//= | 取整除賦值運算符 | c //= a 等效于 c = c // a |
%= | 取 模 (余數(shù))賦值運算符 | c %= a 等效于 c = c % a |
**= | 冪賦值運算符 | c = a 等效于 c = c**a |
a = 21
b = 10
c = 0
c = a + b
print ("1 c 的值為:", c)
c += a
print ("2 c 的值為:", c)
c *= a
print ("3 c 的值為:", c)
c /= a
print ("4 c 的值為:", c)
c = 2
print("C 賦值為 2")
c %= a
print ("5 c 的值為:", c)
c //= a
print ("6 c 的值為:", c)
04.比較(關(guān)系)運算符
比較運算符用來比較兩個操作數(shù)的大小本涕,結(jié)果以布爾值True或False輸出业汰。
運算符 | 運算 | 結(jié)果 | 說明 |
---|---|---|---|
> | 20>10 | True | 20大于10,輸出True |
< | 20<10 | False | 20小于10菩颖,輸出False |
>= | 20>=10 | True | 20大于或等于10样漆,輸出True |
<= | 20<=10 | False | 20小于或等于10,輸出False |
== | 20==10 | False | 20等于10晦闰,輸出False |
!= | 20!=10 | True | 20不等于10,輸出True |
05.邏輯運算符
邏輯運算符是用于對表達(dá)式的True放祟、False值進(jìn)行邏輯判斷
運算符 | 表達(dá)式1 | 表達(dá)式2 | 結(jié)果 | 說明 |
---|---|---|---|---|
and(且 x and y) | True | True | True | 只有x和y的值都為True鳍怨,才會返回True,否則只要x或者y值有一個為False跪妥,就返回False |
True | False | False | ||
False | True | False | ||
False | False | False | ||
or(或 x or y) | True | True | True | 只要 x 或者 y 有一個值為 True鞋喇,就返回 True,只有 x 和 y 的值都為 False,才會返回 False |
True | False | True | ||
False | True | True | ||
False | False | False | ||
not(否not x) | True | ----- | False | 如果 x 為 True骗奖,返回 False,如果 x 為 False确徙,返回 True |
False | ---- | True |
num = 12
result = (num%3==0)and(num%4==0) #result輸出True
result = (num%3==0)or(num%5==0) #result輸出True
num1 = '422'
num2 = 422
not num1 !=num2 # False,因為’num1 != num2‘成立,所以結(jié)果為True执桌,但經(jīng)過not 運算得到取反結(jié)果最終以False輸出
not num1 ==num2 #True
5.1優(yōu)先級問題
not > and > or
x = True
y = True
z = False
x and y
y and z
x or z
not x and y
x or y and z
算數(shù)運算符>關(guān)系運算符>邏輯運算符
06.測驗
1.22 % 3的表達(dá)式輸出結(jié)果為鄙皇?
?1.7
?2.1
?3.0
?4.5
2.9//2 表達(dá)式輸出結(jié)果為?
?1.1
?2.2
?3.3
?4.4
?// 用于向下取接近除數(shù)的整數(shù)仰挣。
3.如果表達(dá)式的操作符有相同的優(yōu)先級伴逸,則運算規(guī)則是?
?1.左到右
?2.右到左
?3.看心情