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é)果的表達式;比如:獨立的數(shù)據(jù)、運算表達式(不能是賦值運算)、函數(shù)調(diào)用表達式
: - 固定寫法
代碼塊 - 和 if 保持一個縮進的一條或者多條語句; 滿足條件才會執(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 保持一個縮進的一條或者多條語句;條件不滿足的時候需要執(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 保持一個縮進的一條或者多條語句;需要被重復(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é)果的表達式;獨立的數(shù)據(jù)、運算表達式(不能有賦值運算)、函數(shù)調(diào)用表達式
: - 固定寫法
循環(huán)體 - 和while保持一個縮進的一條或者多條語句;需要重復(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