Hello大家好煞额,我是你們的小伙伴眶掌,小豪同學(xué)。今天給大家分享的是:
一、python基礎(chǔ)--分支與循環(huán)
文章最后有個小彩蛋哦蚪腋!用一行代碼畫出一個愛你的??
(一)流程控制
1.順序結(jié)構(gòu)
從上往下依次執(zhí)行所有的代碼(默認(rèn))
print('abc')
print(123)
print('hello')
print('hello')
2.分支結(jié)構(gòu)
根據(jù)條件執(zhí)行某段代碼
python中實現(xiàn)分支結(jié)構(gòu)的方式只有一種:if
3.循環(huán)結(jié)構(gòu)
讓指定代碼重復(fù)執(zhí)行
python中實現(xiàn)循環(huán)結(jié)構(gòu)的方式只有兩種:for丰歌、while
(二)分支結(jié)構(gòu)
1.if 單分支結(jié)構(gòu)
滿足某個條件就執(zhí)行某個操作,不滿足就不執(zhí)行
語法:
if 條件語句:
代碼塊
說明:
if - 關(guān)鍵字屉凯,固定寫法
條件語句 - 可以是任何有結(jié)果的表達(dá)式立帖;比如:獨立的數(shù)據(jù)、運算表達(dá)式(不能是賦值運算)悠砚、函數(shù)調(diào)用表達(dá)式
: - 固定寫法
代碼塊 - 和 if 保持一個縮進(jìn)的一條或者多條語句; 滿足條件才會執(zhí)行的一條或者多條語句晓勇。(至少要有一條語句)
執(zhí)行過程:先判斷條件語句是否為True(如果不是布爾值就先h轉(zhuǎn)換成布爾再判斷), 如果為True就執(zhí)行if語句中的代碼塊,否則就不執(zhí)行。
num = 101
if num < 100:
print('第一條語句')
print('第二條語句')
print('第三條語句')
2.if 雙分支結(jié)構(gòu)
滿足某個條件就執(zhí)行某個操作绑咱,不滿足就執(zhí)行另外一個操作
語法:
if 條件語句:
代碼塊1
else:
代碼塊2
說明:
else - 關(guān)鍵字绰筛,固定寫法
: - 固定寫法
代碼塊2 - 和 else 保持一個縮進(jìn)的一條或者多條語句;條件不滿足的時候需要執(zhí)行的一條或者多條語句
執(zhí)行過程:
先判斷條件語句是否為True描融,如果是就執(zhí)行代碼塊1否則執(zhí)行代碼塊2
3.if 多分支結(jié)構(gòu)
滿足不同的條件執(zhí)行不同的操作(后面的條件是在前面的條件不成立的時候判斷的)
語法:
if 條件語句1:
代碼塊1
elif 條件語句2:
代碼塊2
elif 條件語句3:
代碼塊3
...
else:
代碼塊N
說明:
elif - 關(guān)鍵字铝噩,固定寫法
這個結(jié)構(gòu)中 elif 可以根據(jù)情況有1個或者多個;else 也可以根據(jù)情況有或者沒有
執(zhí)行過程:
從前往后依次判斷每個條件語句是否成窿克,如果哪個條件是成立的骏庸,就執(zhí)行對應(yīng)的代碼塊,然后整個結(jié)構(gòu)直接結(jié)束年叮。
如果前面的條件都不成立具被,才執(zhí)行else中的代碼塊
二、for循環(huán)
(一)for循環(huán)
語法:
for 變量 in 序列:
循環(huán)體
說明:
for - 關(guān)鍵字只损;固定寫法
變量 - 可以是已經(jīng)賦值過的變量也可以是沒有賦值過的變量
in - 關(guān)鍵字一姿;固定寫法
序列 - 任何容器型數(shù)據(jù)類型的數(shù)據(jù);字符串改执、列表啸蜜、元組、集合辈挂、字典衬横、迭代器、生成器终蒂、range...
: - 固定寫法
循環(huán)體 - 和 for 保持一個縮進(jìn)的一條或者多條語句蜂林;需要被重復(fù)執(zhí)行的一條或者多條語句
執(zhí)行過程:
讓變量去序列中取值,一個一個的取拇泣,取完為止噪叙,每取一個值執(zhí)行一次循環(huán)體。
(for 循環(huán)的循環(huán)次數(shù)由序列中元素的個數(shù)決定)
(二) range函數(shù)
range 函數(shù) - 用來產(chǎn)生指定范圍內(nèi)的數(shù)字序列
1.range(N)
產(chǎn)生 0 ~ N-1 的數(shù)字序列(N必須是正整數(shù))
print(range(3))
: 0,1,2
for x in range(6):
print('++++', x)
: '++++++++++++++++++++++++'
2.range(M, N)
產(chǎn)生 M ~ N-1 的數(shù)字序列(M,N是整數(shù), M < N)
print(range(5, 11))
: 5,6,7,8,9,10
3.range(M, N, step)
print(range(1, 10, 2))
:1霉翔,3睁蕾,5,7债朵,9
print(range(10, 0, -1))
:10子眶,9,8序芦,7臭杰,6,5谚中,4渴杆,3寥枝,2,1
三磁奖、while循環(huán)
(一)while循環(huán)
語法:
while 條件語句:
循環(huán)體
說明:
while - 關(guān)鍵字囊拜,固定寫法
條件語句 - 任何有結(jié)果的表達(dá)式;獨立的數(shù)據(jù)、運算表達(dá)式(不能有賦值運算)点寥、函數(shù)調(diào)用表達(dá)式
: - 固定寫法
循環(huán)體 - 和while保持一個縮進(jìn)的一條或者多條語句艾疟;需要重復(fù)執(zhí)行的語句;
執(zhí)行過程:
先判斷條件語句是否為True敢辩,如果是就執(zhí)行一次循環(huán)體蔽莱,執(zhí)行完再判斷條件語句是否為True,為True再執(zhí)行循環(huán)體
以此類推,直到條件語句的結(jié)果是False循環(huán)就結(jié)束
彩蛋附上:
print('\n'.join([''.join([('Love'[(x - y) % len('Love')] if ((x * 0.05) ** 2 + (y * 0.1) ** 2 - 1) ** 3 - (x * 0.05) ** 2 * (y * 0.1) ** 3 <= 0 else ' ') for x in range(-30, 30)]) for y in range(30, -30, -1)]))
這個效果圖是這樣的image
好了戚长,今天就到這里吧盗冷!貪多嚼不爛,今天內(nèi)容比較少同廉,可以把前面的復(fù)習(xí)一下哦
image