迴圈結構
順序結構只要按照解決問題的順序寫出相應的語句即可,是最簡單也是最常用的程式結構,執行順序是自上向下,依次執行。
計算機之所以可以做許多自動化的任務,乙個重要的原因在於它可以通過特定語法自行判斷。分支結構其實就是根據判斷條件結果而選擇不同向前路徑的執行方式。
使用方式如下:
if 《條件》:
《語句塊》
word = input()
if word == "一心一懿":
print("無問西東")
使用方式如下:
if 《條件》:
《語句塊1>
else:
《語句塊2>
例:小明的成績為75分,60分為及格線,請判斷小明是否及格
grade = 75
if grade >= 60:
print("及格")
else:
print("不及格")
注:python**中具有相同縮排的**被視為**塊,請嚴格遵循縮排規則:4個空格,盡量不要使用tab。(雖然我一直用的是tab。。。,但建議還是要有的)
使用方式如下:
if 《條件1>:
《語句塊1>
elif 《條件2>:
《語句塊2>
...else:
《語句塊n>
例:小華的成績為75分,學校規定90分及以上為a,75分及以上為b,60分及以上為c,60分以下為d,請判斷小華的成績等級。
grade = 75
if grade >= 90:
print("a")
elif grade >= 75:
print("b")
elif grade >= 60:
print("c")
else:
print("d")
在進行單元測試時,可以用assert
在程式中置入檢查點,只有條件為 true 才能讓程式正常執行。
計算機在具有重複性規律的事物上的工作效率極高,其原因在於它可以以極快的速度遍歷並且迴圈該事物。
在 python 中,我們可以通過 for 迴圈遍歷任何有序序列,如str,list,tuple
等,也可以遍歷任何可迭代物件,如dict
。這種遍歷稱為迭代。
使用方式如下:
for 《迴圈變數》 in 《遍歷結構》:
《語句塊》
字串迭代
for i in "april":
print("hello:",i) #可以試著比較下與 print("hello:"+i) 的差異
列表迭代
for word in ["一身詩意千尋瀑","萬古人間四月天"]:
print(word)
索引迭代在 python 中,迭代永遠是取出元素本身,而非元素的索引。
然而對於有序集合,如列表,元組等,元素是有索引的,因此我們通過enumerate函式來遍歷索引和元素本身。
enumerate函式會把['a','b','c']
變成[(0,'a'),(1,'b'),(2,'c')]
,因此迭代的每乙個元素實際上為乙個元組。
例:在迭代 [『a』, 『b』, 『c』, 『d』] 時,利用迭代語句列印出順序 - 字母(順序從1開始)。
l = ['a', 'b', 'c', 'd']
for index, name in enumerate(l):
print (index+1, '-', name)
字典迭代我們知道 dict 是可迭代物件,但是用 for 迴圈直接迭代只能拿到其 key 值,
如果我們要拿到 value 值 ,就需要借助 dict 中的values方法。
該方法是將 dict 轉換成乙個包含所有 value 的列表。
例:給定乙個學習小組成員的編號及其成績:
d =
請計算該組成員的平均分。
d =
sum = 0.0
for v in d.values():
sum += v
mean = sum/len(d)
print(mean)
那麼如何同時迭代 key和value 呢?方法是借助於 dict 中的items方法。
例:給定乙個學習小組成員的編號及其成績:
d =
請列印該組每一名成員的成績計算該組成員的平均分。(用 平均分:分數 格式來表示)
d =
sum = 0.0
for k,v in d.items():
sum += v
mean = sum/len(d)
print(k,':',v)
print("平均分:",mean)
多重迭代在迴圈內部還可以巢狀迴圈。
例:對100以內的兩位數,請使用兩重迴圈輸出所有十位數數字比個位數數字小的數。
for x in [1,2,3,4,5,6,7,8 ]:
for y in [ 2,3,4,5,6,7,8,9 ]:
if x < y:
print(10*x+y)
例:請用for迴圈迭代數列 1-100 並列印出7的倍數。
for i in range(1,101):
if i % 7 == 0:
print (i,end=",") #end=","表示結果以行表示,每個元素用逗號隔開
無限迴圈指的是由條件控制的迴圈執行方式,程式會反覆執行語句塊,直到條件不滿足時結束。while 迴圈根據表示式判斷迴圈是否結束。 使用方式如下:
while 《條件》:
《語句塊1>
else:
《語句塊2>
例:計算911以內奇數的和
sum = 0
x = 1
while x <= 911:
sum += x
x += 2
print(sum)
for c in "april":
if c=="r":
break
print(c,end="")
s = "python"
while s != "":
for c in s:
print(c,end="")
s = s[:-1]
s = "python"
#比較上下兩個程式執行結果的差異,說明break語句的作用
注:當迴圈沒有被break語句退出時,執行else語句塊,即else語句塊是對程式正常執行的額外獎勵。
Python入門 程式控制
在python中語句塊不用 而是用縮進來表示語句塊 順序結構是從左到右,從上而下執行的 在python,乙個語句的結束,以換行符作為標誌的單分支 if 條件 當條件成立時,執行的 print 當條件成立時,執行的 雙分支 if condition 如果條件成立,則執行這兒的 else 條件不成立的時...
4 Python入門 程式控制 選擇結構。
程式控制的三大流程1 順序結構 從左到右,從上而下執行的 在python,乙個語句的結束,以換行符作為標誌的 print hello print world 順序執行 2 選擇結構 單分支 只考慮當什麼的時候,只有乙個條件 if 條件 必須分行 tab一下 不然是同等級別 print 當條件成立,執...
python 程式控制結構
1.if語句 語法 if 條件1 條件為真,執行縮排的語句塊 if 條件2 巢狀語句 條件真縮排語句塊 else 條件為假時執行 條件假縮排語句塊 其餘語句 多分支結構 if 條件1 語句塊1 elif 條件2 語句塊2 條件1不成立條件2成立時執行 elif 條件3 語句塊3 else 注意 el...