十、流程圖
1、流程圖(Flowchart)
流程圖是一種用于表示算法或代碼流程的框圖組合,它以不同類型的框框代表不同種類的程序步驟,每?jī)蓚€(gè)步驟之間以箭頭連接起來(lái)。
好處:
1)代碼的指導(dǎo)文檔
2)有助于規(guī)劃高效率的程序結(jié)構(gòu)
3)便于與他人交流
流程圖的思維是至上往下走的,線性邏輯的思維模式。
2、函數(shù)(function)
函數(shù)就是對(duì)一段代碼進(jìn)行封裝。
3、思維導(dǎo)圖(Mind Map)
思維導(dǎo)圖又叫心智圖,是表達(dá)發(fā)散性思維的有效的圖形思維工具,它簡(jiǎn)單卻又極其有效,是一種革命性的思維工具。
十一、分支與循環(huán)(branch and loop)
1、分支結(jié)構(gòu) - if語(yǔ)句
Python的分支結(jié)構(gòu)由if語(yǔ)句來(lái)實(shí)現(xiàn)的,有5種語(yǔ)法:
1)判斷一個(gè)條件,如果這個(gè)條件成立,就執(zhí)行其包含的某條語(yǔ)句或某個(gè)代碼塊。包含的語(yǔ)句使用縮進(jìn),縮進(jìn)決定了從屬關(guān)系。
if condition:
statement(s)
舉例:
if 3<5:
print("我在里面")
print("我也在里面")
print("我在外面")
2)判斷一個(gè)條件:
如果條件成立,就執(zhí)行其包含的某條語(yǔ)句或某個(gè)代碼塊
如果條件不成立,就執(zhí)行另外的某條語(yǔ)句或某個(gè)代碼塊
if condition:
statement(s)
else:
statement(s)
舉例:
if "小甲魚(yú)" == "小姐姐":
print("小甲魚(yú)是小姐姐!")
else:
print("小甲魚(yú)不是小姐姐!")
3)判斷多個(gè)條件:
如果第1個(gè)條件不成立,則繼續(xù)判斷第2個(gè)條件,如果第2個(gè)條件還不成立,則接著判斷第3個(gè)條件……
if condition1:
statement(s)
elif condition2:
statement(s)
elif condition3:
statement(s)
……
舉例:
score = input("請(qǐng)輸入你的分?jǐn)?shù):")
score = int(score)
if 0<= score < 60:
print("D")
elif 60<= score < 80:
print("C")
elif 80<= score < 90:
print("B")
elif 90<= score < 100:
print("A")
elif score == 100:
print("S")
4)多條件else:
第4種是在第3種的情況下添加一個(gè)else,表面上面所有的條件均不成立的情況下,執(zhí)行某條語(yǔ)句或某個(gè)代碼塊。
if condition1:
statement(s)
elif condition2:
statement(s)
elif condition3:
statement(s)
……
else:
statement(s)
舉例:
score = input("請(qǐng)輸入你的分?jǐn)?shù):")
score = int(score)
if 0<= score < 60:
print("D")
elif 60<= score < 80:
print("C")
elif 80<= score < 90:
print("B")
elif 90<= score < 100:
print("A")
elif score == 100:
print("S")
else:
print("請(qǐng)輸入 0~100 之間的分值!")
5)條件表達(dá)式
條件成立時(shí)執(zhí)行的語(yǔ)句 if condition else 條件不成立時(shí)執(zhí)行的語(yǔ)句
舉例:
正常表達(dá)式:
age = 16
if age < 18:
print("抱歉,未滿18歲禁止訪問(wèn)。")
else:
print("歡迎您來(lái)~")
條件表達(dá)式:
age = 16
print("抱歉,未滿18歲禁止訪問(wèn)。") if age < 18 else print("歡迎您來(lái)~")
案例4的條件表達(dá)式:
score = 66
level = ('D' if 0<= score <60 else
'C' if 60<= score <80 else
'B' if 80<= score <90 else
'A' if 90<= score <100 else
'S' if score == 100 else
"請(qǐng)輸入 0~100 之間的分值!")
print(level)
2、分支結(jié)構(gòu)的嵌套
舉例:
age = 18
isMale = True
if age <18 :
print("抱歉,未滿18歲禁止訪問(wèn)。")
else:
if isMale:
print("任君選購(gòu)!")
else:
print("抱歉,本店商品可能不適合小公舉哦")
3、循環(huán)結(jié)構(gòu)
(1)while循環(huán)
只要條件成立,其包含的某條語(yǔ)句或某個(gè)語(yǔ)句塊就會(huì)一直被執(zhí)行。
while condition:
statement(s)
舉例:
love = "yes"
while love == "yes":
love = input("今天你還愛(ài)我嗎?")
(2)for循環(huán)
下面可以看到,第5部分
(3)退出死循環(huán)
1)break
2)continue:
continue也會(huì)跳出循環(huán)體,但只是跳出本輪循環(huán),它還會(huì)回到循環(huán)體的條件判斷位置,然后繼續(xù)下一輪的循環(huán)。
舉例:
i = 0
while i < 10:
i += 1
if i % 2 == 0:
continue
print(i)
1
3
5
7
9
3)break和continue的區(qū)別
4)else
當(dāng)循環(huán)的條件不再為真的時(shí)候,便會(huì)執(zhí)行else語(yǔ)句的內(nèi)容。
舉例:
i = 1
while i < 5:
print("循環(huán)內(nèi),i的值是", i)
i += 1
else:
print("循環(huán)外,i的值是", i)
4、循環(huán)結(jié)構(gòu)的嵌套
無(wú)論是break語(yǔ)句還是continue語(yǔ)句,它們只能作用于一層循環(huán)體。
day = 1
hour = 1
while day <= 7:
while hour <= 8:
print("今天我一定要堅(jiān)持學(xué)習(xí)8小時(shí)!")
hour += 1
if hour >1:
break
day += 1
今天我一定要堅(jiān)持學(xué)習(xí)8小時(shí)!
今天我一定要堅(jiān)持學(xué)習(xí)8小時(shí)!
今天我一定要堅(jiān)持學(xué)習(xí)8小時(shí)!
今天我一定要堅(jiān)持學(xué)習(xí)8小時(shí)!
今天我一定要堅(jiān)持學(xué)習(xí)8小時(shí)!
今天我一定要堅(jiān)持學(xué)習(xí)8小時(shí)!
今天我一定要堅(jiān)持學(xué)習(xí)8小時(shí)!
九九乘法表
i = 1
while i <= 9:
j = 1
while j <= i:
print(j,"*",i,"=",j * i,end=" ")
j += 1
print()
i += 1
5、for循環(huán)
for 變量 in 可迭代對(duì)象 :
statement(s)
可迭代對(duì)象指元素能夠被單獨(dú)提取出來(lái)的對(duì)象,比如字符串。
舉例:for循環(huán)每次從字符串Love里面提取出一個(gè)字符,并賦值給變量each,循環(huán)體內(nèi)只有一個(gè)語(yǔ)句,將each變量值打印出來(lái)。
for each in "Love":
print(each)
L
o
v
e
舉例用while來(lái)實(shí)現(xiàn):
i = 0
while i < len("Love"):
print("Love"[i])
i += 1
L
o
v
e
6、range生成數(shù)值序列,參數(shù)只能是整型。
range(stop)
range(start, stop)
range(start, stop, step)
舉例:
for i in range(10):
print(i)
0
1
2
3
4
5
6
7
8
9
for i in range(5,10):
print(i)
5
6
7
8
9
for i in range(5,10,2):
print(i)
5
7
9
舉例:從0加到100萬(wàn)的和文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-832614.html
i =1
sum = 0
while i <= 1000000:
sum += i
i += 1
print(sum)
500000500000
sum = 0
for i in range(1000001):
sum += i
print(sum)
500000500000
舉例:查看10以內(nèi)的素?cái)?shù)文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-832614.html
for n in range(2,10):
for x in range(2,n):
if n % x ==0:
print(n,"=",x,"*",n // x)
break
else:
print(n,"是一個(gè)素?cái)?shù)")
2 是一個(gè)素?cái)?shù)
3 是一個(gè)素?cái)?shù)
4 = 2 * 2
5 是一個(gè)素?cái)?shù)
6 = 2 * 3
7 是一個(gè)素?cái)?shù)
8 = 2 * 4
9 = 3 * 3
到了這里,關(guān)于Python學(xué)習(xí)-流程圖、分支與循環(huán)(branch and loop)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!