Day3總結(jié)



運(yùn)算符:數(shù)學(xué)運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、賦值運(yùn)算符、位運(yùn)算符

1.數(shù)學(xué)運(yùn)算符:+,-,,/,//,%,*

2.比較運(yùn)算符:>,<,==,!=(不等于),>=(大于等于),<=(小于等于)

所有的比較運(yùn)算符的運(yùn)算結(jié)果都是布爾值,True or False

print(100>1)
print(78<43)
print(100==1)
num=10
print(1<=num<=13) #目前只有python支持?jǐn)?shù)學(xué)中表示范圍的寫法
print(1<num<1.5)

result=200>1
print(result)

3.邏輯運(yùn)算符:and(l邏輯與運(yùn)算),or(邏輯或運(yùn)算),not(邏輯非運(yùn)算)

所有邏輯運(yùn)算符的運(yùn)算對(duì)象都是布爾值,結(jié)果也是布爾值

1).邏輯與運(yùn)算:

兩個(gè)都是True結(jié)果都是True,只要有1個(gè)條件是False結(jié)果就是False
True and True -->True
True and False -->False
False and True -->False
False and False -->False
當(dāng)要求多個(gè)條件同時(shí)滿足時(shí),就將多個(gè)條件用and連接,相當(dāng)于生活中的并且

練習(xí)1:獲取獎(jiǎng)學(xué)金的條件是:操作分不小于95分并且績(jī)點(diǎn)不小于4.0

score=98
grade=3.5
score>=95
grade>=4.0
print('是否能夠拿到獎(jiǎng)學(xué)金:',score>=95 and grade>=4.0)

練習(xí)2:判斷age對(duì)應(yīng)的人是否屬于兒童

age=18
print('是否是兒童:',age>=3 and age<=18) #邏輯運(yùn)算法
print('s是否是兒童:',3<=age<=18)  #比較運(yùn)算符 做飯

2).邏輯或運(yùn)算:

兩個(gè)都是False結(jié)果才是False,只要有一個(gè)是True結(jié)果就是True.

True or True -->True
True or False -->True
False or True -->True
False or False -->False

當(dāng)要求多個(gè)條件中只要有一個(gè)條件滿足的時(shí)候,就將多個(gè)條件用or連接,相當(dāng)于生活中的或者

練習(xí)3:

score=98
grade=4.5
print('能否拿獎(jiǎng)學(xué)金:',score>95 or grade>4)
a=score>95 and grade>=2.0
b=grade>4.5 and score>=80
print('能否拿獎(jiǎng)學(xué)金佛:',a or b)

3).短路操作

條件1 and 條件2 如果條件1的結(jié)果是False,那么系統(tǒng)不會(huì)判斷條件2的結(jié)果,整個(gè)語(yǔ)句的結(jié)果直接變成False
條件1 or 條件2 如果條件1的結(jié)果是True,系統(tǒng)不會(huì)判斷條件2的結(jié)果,整個(gè)語(yǔ)句的結(jié)果True

4).邏輯非運(yùn)算:布爾值取反,True變False,False變True.

not True False
not False True
對(duì)某個(gè)條件進(jìn)行否定的時(shí)候使用它
年齡不大于18

age=19
print(age<=18)
print(not age>18)

4.賦值運(yùn)算符:=,+=,-=,=,/=,//=,%=,*=

所有的賦值運(yùn)算符的左邊必須是變量,復(fù)合賦值運(yùn)算符的左邊要求除了是變量以外,這個(gè)變量還必須是已經(jīng)聲明過的變量
賦值符號(hào)的右邊可以是數(shù)據(jù)(python),已經(jīng)聲明過的變量,運(yùn)算表達(dá)式

name='發(fā)順豐'
sum1=10+33

變量+=數(shù)據(jù) 是指將變量中保存的值加上指定的數(shù)據(jù),將結(jié)果重新保存在變量中

num2=1
num2+=2
print(num2)
print(num2,id(num2))
num2*=10
print(num2)
num2/=10
print(int(num2))

5.運(yùn)算符的優(yōu)先級(jí)

數(shù)學(xué)運(yùn)算>比較運(yùn)算>邏輯運(yùn)算符(not>and>or)>賦值運(yùn)算符
先算優(yōu)先級(jí)高的,再算優(yōu)先級(jí)低的。有括號(hào)先算括號(hào)里面的

num3=10+2>9 and 3*2<4
num3=10+2>9 and 6<4
num3=12>9 and 6<4
num3=True and False
num3=False
print(num3)

print(not True or False)
print(True or not False)


if條件語(yǔ)句

1.什么時(shí)候使用if語(yǔ)句

程序中某些代碼不是一定會(huì)執(zhí)行,而是在滿足某些條件的時(shí)候才執(zhí)行就可以使用if條件語(yǔ)句

2.if結(jié)構(gòu)

1)語(yǔ)法:
if條件語(yǔ)句:
        代碼塊

>2)說明
if  -  關(guān)鍵字,固定寫法
條件語(yǔ)句- 結(jié)果是布爾的表達(dá)式;本質(zhì)可以是除了賦值語(yǔ)句以外的任何語(yǔ)句,
            例如:數(shù)據(jù),已經(jīng)聲明過的變量,運(yùn)算表達(dá)式
:   -固定寫法,一般有冒號(hào)的地方,換行產(chǎn)生縮進(jìn),縮進(jìn)TAB鍵,
代碼塊  -和if保持一個(gè)縮進(jìn)的一條或者多條語(yǔ)句;滿足條件才會(huì)執(zhí)行

3)執(zhí)行過程

先判讀條件語(yǔ)句是否為True(如果條件語(yǔ)句不是布爾值,先轉(zhuǎn)換成布爾再判斷)
如果為True就執(zhí)行代碼塊中的語(yǔ)句,否則不執(zhí)行,直接執(zhí)行后面的其他語(yǔ)句

if True:
    print('語(yǔ)句1')
    print('語(yǔ)句2')
print('語(yǔ)句3')

練習(xí)4:如果num是偶數(shù),就打印偶數(shù),否則不打印

num=12
if num%2==0:
    print('偶數(shù)')    #s數(shù)字中除 0,其他全會(huì)判斷為True

3.if-else結(jié)構(gòu)

滿足某個(gè)條件執(zhí)行一個(gè)操作,不滿足這個(gè)條件執(zhí)行另外的操作

1)語(yǔ)法
if 條件語(yǔ)句:
代碼塊1
else:
代碼塊2

2)說明
if -關(guān)鍵字,固定寫法
條件語(yǔ)句 -可以輸數(shù)據(jù)、聲明過的變量、不包含賦值符號(hào)的運(yùn)算
:--固定寫法
代碼塊1 -和if保持一個(gè)縮進(jìn)的一條或者多條語(yǔ)句
else -關(guān)鍵字,固定寫法
代碼塊2 -和else保持一個(gè)縮進(jìn)的一條或者多條語(yǔ)句

3.1)執(zhí)行過程

先判斷條件語(yǔ)句是否為True(如果不是布爾值,轉(zhuǎn)換成布爾值再判斷)
如果為True,執(zhí)行代碼塊1,否則執(zhí)行代碼塊2

練習(xí)5:如果num死偶數(shù),就打印偶數(shù),否則奇數(shù)

num=19
if num%2==0:
    print('偶數(shù)')
else:
    print('奇數(shù)')

4.if-elif-else

4.1)語(yǔ)法
if 條件語(yǔ)句1:
代碼塊1
elif 條件語(yǔ)句2
代碼塊2
elif 條件語(yǔ)句3
代碼塊3
...
else:
代碼塊4

4.2)執(zhí)行過程
先判斷條件語(yǔ)句1是否為True,
如果為True就執(zhí)行代碼塊1,
然后整個(gè)if-elif-else結(jié)構(gòu)結(jié)束,執(zhí)行其他語(yǔ)句
如果前面所有的語(yǔ)句都不為True,就執(zhí)行else中的語(yǔ)句
已經(jīng)


0-3 幼兒
4-12 兒童
13-17 少年
18-28 青年
29-49 壯年
50-60 老年
"""
age=88

if 0<age<=3:
    print('幼兒')
elif age<=12:
    print('兒童')
elif age<=17:
    print('少年')
elif age<=28:
    print('青年')
elif age<=49:
    print('壯年')
elif age<=60:
    print('老年')
else:
    print('神仙')

if True:
pass #pass 暫時(shí)不知道要打印輸出什么,先代替站位

5.if嵌套

可以在任何if結(jié)構(gòu)中根據(jù)需求再寫其他的if結(jié)構(gòu)

練習(xí)6:如果一個(gè)數(shù)是偶數(shù),否則打印奇數(shù),如果這個(gè)數(shù)能被4整除,那么打印4的倍數(shù),如果個(gè)位數(shù)是3,打印最后一位數(shù)是3

num=17
if num%2==0:
    print('偶數(shù)')
    if num%4==0:
        print('4的倍數(shù)')
else:
    print('奇數(shù)')
    if num%10==3:
        print('最后一位數(shù)是3')
    else:
        print('數(shù)據(jù)不對(duì)')

練習(xí)7:判斷一個(gè)三位數(shù)是否為水仙花數(shù)(個(gè)位的3次方+十位的3次方+百位的3次方剛好等于這個(gè)數(shù)本身)

num=153
if num==(num%10)**3+((num//10)%10)**3+(num//100)**3:
    print('水仙花數(shù)')
else:
    print('不是水仙花數(shù)')

百位數(shù),給該數(shù)整除100取商。個(gè)位數(shù)就是對(duì)該數(shù)對(duì)10取余,十位數(shù)就是對(duì)該數(shù)整除10,然后再對(duì)10取余



python和數(shù)字相關(guān)的類型:int、float、bool、complex

1.int(整型):包含所有的整數(shù)

python 中可以通過二進(jìn)制、十進(jìn)制、八進(jìn)制和十六進(jìn)制的形式對(duì)整數(shù)進(jìn)行表示
"""

1.1)十進(jìn)制

基數(shù):0,1,2,3,4,5,6,7,8,9,
進(jìn)位:逢10進(jìn)1
位權(quán):123(10)=1102+ 2101+310*0 (10的多少次方)
表示方法:直接寫,不需要加前綴,89,1823,90

1.2)二進(jìn)制數(shù)

基數(shù):0,1
進(jìn)位:逢2進(jìn)1
位權(quán):101(2)=122+021+12*0 (2的多少次方)
表示方法:在二進(jìn)制數(shù)前加0b

1.3)八進(jìn)制

基數(shù):0,1,2,3,4,5,6,7
進(jìn)位:逢8進(jìn)1
位權(quán):56(8)=581+68**0 **表示次方
表示方法:在八進(jìn)制數(shù)前0o

1.4)十六進(jìn)制

基數(shù):0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f
進(jìn)位:逢16進(jìn)1
位權(quán):1af=1162+10161+1516*0
**表示方法:在十六進(jìn)制數(shù)前加0x

num=110
print(num+10)
num=0b101
print(num)
num=0o56
print(num)
num=0o12
print(num) 

1.5)進(jìn)制轉(zhuǎn)換

十進(jìn)制轉(zhuǎn)換成二進(jìn)制:bin(其他進(jìn)制整數(shù))
轉(zhuǎn)換成八進(jìn)制:oct(其他進(jìn)制整數(shù))
轉(zhuǎn)換成十六進(jìn)制:hex(其他進(jìn)制整數(shù))

print(bin(16))
print(oct(100))  #0o144=100
print(hex(100))  #0x64=100

2.float(浮點(diǎn)數(shù)):包含所有的小數(shù),12.5,-0.12

python支持科學(xué)計(jì)數(shù)法
1200==1.2e3 0.001==1e-3
print(1.2e3,1e-3)

3.bool(布爾):只有True和False兩個(gè)值

True本質(zhì)就是數(shù)字1,F(xiàn)alse本質(zhì)就是數(shù)字0

print(True+1)
print(False+1)

4.complex(復(fù)數(shù)):包含所有帶有虛部的數(shù)

實(shí)部+虛部(數(shù)字加j)

num1=10+2j
print(num1,type(num1))
num2=2-3j
print(num1+num2)
print(num1*num2)

5.type函數(shù)

type(數(shù)據(jù)) 獲取數(shù)據(jù)對(duì)應(yīng)的類型

6.類型轉(zhuǎn)換

類型名(數(shù)據(jù)) -->將數(shù)據(jù)轉(zhuǎn)換成指定類型
int(數(shù)據(jù)):將數(shù)據(jù)轉(zhuǎn)換成整型;字符串去掉引號(hào)后,本身就是一個(gè)整數(shù)
float(數(shù)據(jù)):將數(shù)據(jù)轉(zhuǎn)換成浮點(diǎn)型;去掉引號(hào)后,本身就是一個(gè)數(shù)字,就能轉(zhuǎn)換成
bool(數(shù)據(jù)):數(shù)字轉(zhuǎn)換成布爾時(shí),除了0和空串其他都會(huì)轉(zhuǎn)換成True

num=12.5
nnum=int(12.5)
print(nnum)
print(type(nnum),nnum)
num2=float(100)
print(type(num2),num2)
print(int(10.2))
print(bool(0))
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • DAY3 運(yùn)算符和分支結(jié)構(gòu) 1.比較運(yùn)算符 >(大于)、<(小于)、==(等于)、!=(不等于)、>=(大于等于)...
    664a159048ed閱讀 174評(píng)論 0 0
  • day3總結(jié) 運(yùn)算符:數(shù)學(xué)運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、賦值運(yùn)算符 比較運(yùn)算符:>,<,==,!=,>=,<=所...
    Sun_092b閱讀 526評(píng)論 0 0
  • 運(yùn)算符:數(shù)學(xué)運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、賦值運(yùn)算、(位運(yùn)算) 1.數(shù)學(xué)運(yùn)算符:+,-,,/,*,//,% 2....
    3981cff33903閱讀 211評(píng)論 0 0
  • 運(yùn)算符 python支持的運(yùn)算符:數(shù)學(xué)運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、賦值運(yùn)算符、位運(yùn)算 2. 比較運(yùn)算符: <,...
    Error_2d57閱讀 167評(píng)論 0 0
  • 運(yùn)算符 運(yùn)算符:數(shù)據(jù)運(yùn)算符,比較運(yùn)算符,邏輯運(yùn)算符,賦值運(yùn)算符 比較運(yùn)算符 > ,<,==,!=,>=,<= 所有...
    灬小魚兒zzZ閱讀 308評(píng)論 0 0

友情鏈接更多精彩內(nèi)容