if路鹰、if...else贷洲、if...elif...else、while晋柱、for优构、break、continue雁竞、for...else和while...else
if條件的4種用法:
<1>if 判斷語句 即bool類型钦椭,True False
<2>if 數(shù)字 0則假,非0則真
<3>if 數(shù)據(jù)集合 判斷數(shù)據(jù)的集合類型:字符串碑诉、列表彪腔、元組、字典进栽、集合德挣、range、還可
? 以判斷二進(jìn)制數(shù)據(jù)里有沒有數(shù)據(jù)
? 如果數(shù)據(jù)集合內(nèi)有數(shù)據(jù)表示條件成立快毛,數(shù)據(jù)集合為空表示條件不成立
<4>if None類型 判斷None類型格嗅,None(空)表示條件不成立,not None(非空) 表示條件成立
1.if格式
if 判斷語句: if 后一個空格唠帝,然后判斷語句屯掖,然后直接跟:
代碼縮進(jìn)(四個空格Tab鍵)當(dāng)判斷語句條件成立(為真)的時候 執(zhí)行代碼1
代碼縮進(jìn)(四個空格Tab鍵)當(dāng)判斷語句條件成立(為真)的時候 執(zhí)行的代碼2
代碼縮進(jìn)(四個空格Tab鍵)當(dāng)判斷語句條件成立(為真)的時候 執(zhí)行的代碼...
2.if...else格式
if 判斷語句:
? ? 如果判斷語句成立, 執(zhí)行的代碼
else:
? ? 如果判斷語句不成立, 執(zhí)行的代碼
3.if...elif的使用格式:elif -> else if? 否則如果
if 判斷語句1:
如果判斷語句成立, 執(zhí)行的代碼1
elif 判斷語句2:
如果判斷語句成立, 執(zhí)行的代碼2
elif 判斷語句3:
如果判斷語句成立, 執(zhí)行的代碼3
...
4.if...elif...else格式
if 判斷語句1:
如果判斷語句成立, 執(zhí)行的代碼1
elif 判斷語句2:
如果判斷語句成立, 執(zhí)行的代碼2
elif 判斷語句3:
如果判斷語句成立, 執(zhí)行的代碼3
...
else:
? ? 如果判斷語句不成立, 執(zhí)行的代碼
注意點:
elif必須和if一起使用,否則出錯
else 一般用在最后襟衰,即所有條件都不滿足時使用
5.random隨機(jī)數(shù)
import random導(dǎo)入模塊
c = random.randint(0, 2)贴铜,電腦隨機(jī)產(chǎn)生一個整數(shù),randint(0, 2) == [0, 2]
6.while循環(huán)的格式
while 判斷條件:
如果判斷條件成立(真 或者 true) 執(zhí)行代碼
? while和if的用法基本類似,區(qū)別在于:if 條件成立右蒲,則執(zhí)行一次阀湿; while 條件成立,則重復(fù)執(zhí)行瑰妄,直到條件不成立為止陷嘴。
? 一般情況下,需要多次重復(fù)執(zhí)行的代碼间坐,都可以用循環(huán)的方式來完成
? 循環(huán)不是必須要使用的灾挨,但是為了提高代碼的重復(fù)使用率,所以有經(jīng)驗的開發(fā)者都會采用循環(huán)
? 類似if的嵌套竹宋,while嵌套就是:while里面還有while
7.for循環(huán)的格式
for 臨時變量 in 列表或者字符串等可迭代對象:
循環(huán)滿足條件時執(zhí)行的代碼
? 像while循環(huán)一樣授滓,for可以完成循環(huán)的功能心褐。
? 在Python中 for循環(huán)可以遍歷任何序列的項目朗鸠,如一個列表或者一個字符串等婿脸。
? 循環(huán): while循環(huán) 和 for循環(huán)
? 死循環(huán): while
? 循環(huán)遍歷可迭代對象: for循環(huán)
? 其他場景 全看個人喜好
? 死循環(huán):
while True:
print("死循環(huán)")
? 循環(huán)嵌套中
? 外部循環(huán)循環(huán)一次 內(nèi)部循環(huán)需要循環(huán)n次 -> 一對多
i = 1
while i <= 9:
? ? j = 1
? ? while j <= i:
? ? ? ? print("%d * %d = %-2d" % (j, i, j * i), end = " ")
? ? ? ? j += 1
? ? # 換行
? ? print()
? ? i += 1
注意:
%2d 如果對應(yīng)位置的變量是一位 那么另一位用空格補位
%-2d 代表是左對齊
%2d? 代表是右對齊
print("hello", end="\n") 簡寫 print("hello")
print("hello", end="")
end 在最后一個值之后附加的字符串,默認(rèn)是換行符飒硅,可以去掉
end='\n'換行砂缩,去掉\n作谚,end = ''程序不換行
print('sss','ddd',sep=' ')簡寫print('sss','ddd')輸出結(jié)果sss ddd
print('sss','ddd',sep='')輸出結(jié)果sssddd
print('sss','ddd',sep='_')輸出結(jié)果sss_ddd
sep? 兩個值之間插入的字符串默認(rèn)為空格,可以去掉或者換成其他字符
range(x)? 一個整數(shù)區(qū)間0~(x-1)庵芭,包括0不包括x
range(start,end,step)即range(開始,結(jié)束,步長)
? ? ? ? ? ? ? # 打印0-4
? ? ? ? ? ? ? for c in range(5):
? ? ? ? ? ? ? ? ? print(c)
? ? ? ? ? ? ? # 打印1-8
? ? ? ? ? ? ? for c in range(1,9):
? ? ? ? ? ? ? ? ? print(c)
? ? ? ? ? ? ? # 步長為2打印1-8
? ? ? ? ? ? ? for c in range(1,9,2):
? ? ? ? ? ? ? ? ? print(c)
? ? ? ? ? ? ? # 步長為-1即從右向左步長為1,打印5-0不包括0
? ? ? ? ? ? ? for c in range(5,0,-1):
? ? ? ? ? ? ? ? ? print(c)
? ? ? ? ? ? ? # 步長為-2即從右向左步長為2,打印8-0不包括0
? ? ? ? ? ? ? for c in range(8,0,-2):
? ? ? ? ? ? ? ? ? print(c)
8.break和continue
? break的作用:立刻結(jié)束break所在的循環(huán)
? continue的作用:用來結(jié)束本次循環(huán)妹懒,緊接著執(zhí)行下一次的循環(huán)
? break/continue只能用在循環(huán)中,除此以外不能單獨使用
? break/continue在嵌套循環(huán)中双吆,只對最近的一層循環(huán)起作用
? exit()? ? 程序執(zhí)行到這里直接結(jié)束
9.for...else和while...else
Python的for...else和while...else語法眨唬,這是Python中最不常用,最為誤解的語法特性之一好乐。
? ? Python中的for匾竿、while循環(huán)都有一個可選的else分支(類似if語句和try語句那樣),在循環(huán)迭代正常完成之后執(zhí)行蔚万。換句話說搂橙,如果我們不是除正常以外的其他方式退出循環(huán),那么else分支將被執(zhí)行笛坦。也就是在循環(huán)體內(nèi)沒有break語句、沒有return語句苔巨,或者沒有異常出現(xiàn)版扩。