python基礎(二)--程序控制

文章目錄

  • 順序執行
    按照先後順序一條一條執行,默認的執行順序是從左至右,從上至下
  • 分支
    根據不同的情況,條件滿足才執行條件下的語句
  • 循環
    只要滿足某個條件,此條件下的語句就反覆執行,直至條件不再滿足

分支

單分支

if condition:  
	action
	action
	...
>>> if 1:
    	print ('hello world')
	hello world      ##默認情況下條件爲真,因此執行輸出語句

>>> if 0:
		print ('hello world') ##輸出語句只有在假的狀態下才會執行,但是實際狀態爲真,因此此語句不執行	

>>> if 1<2:
		print ('1 is less than 2')
	1 is less than 2    ##條件滿足,執行輸出

注意:
(1)condition必須是一個布爾值,這個地方有一個隱式的轉換bool(condition)
(2)if語句最後需要以英文冒號:結尾,冒號後面的語句需要另起一行,並且需要縮進

  • if,for,def,class等關鍵字後面都可以跟代碼塊
  • 這些語句後面可以嵌套,比如再接一個if 2<3:pass

多分支

if condition1:
	action
elif condition2:
	action
elif condition3:
	action
...
else:             ##條件語句需要閉環,經常由else完成此種功能
	action

>>> score=72
	if score<60 and score >0:
    	print ("you don't pass this exam")
	elif score >=60 and score <= 90:
    	print('you have passed this exam')
	elif score > 90 and score <= 100:
    	print ('excellent!')
	else:
    	print ('your score is wrong')
    you have passed this exam   ##根據條件的匹配,因此輸出了第二個條件中的語句
`嵌套:`
>>>	a=0                              
	if a<0:
    	print ('a is less than zero')
	else:                           ##在此分支下開啓嵌套模式
    	if a==0:
        	print('a is zero')
    	else:
        	print ('a is greater than zero')

循環

while循環
while主要用於死循環,或者不能明確知道循環次數的場景

while crond:
	block

while True:      #死循環
	pass         #pass語句主要用於程序的架構,無實質意義

a=10
while a:
	print(a)
	a-=1

for語句

for element in iteratable: # 可迭代對象中有元素可以迭代,進入循環體
    block

for i in range(0,10):    # range爲序列函數,左閉右開區間,[0,10)
	print(i)

# 計數器
for i in range(0):   #區間爲[0,0),因此此語句無輸出
    print(i)
print('---------')
for i in range(-2):  #計數器中i>=0因此此語句也無輸出
    print(i)
print('---------')
for i in range(1): 	 #此語句有輸出[0,1)
    print(i)
# 打印偶數
for i in range(0, 10):
    if i % 2 == 0 :
        print(i)
for i in range(0, 10, 2):
        print(i)
# 打印奇數
for i in range(0, 10):
    if i % 2 != 0 :
        print(i)
for i in range(1, 10, 2):
    print(i)

使用邏輯與來判斷奇偶數:

for i in range(0,10):
    if i & 1:         #與1逐位與運算並且爲真的數必然爲奇數
        print(i)
#continue用法
for i in range(0,10):
    if i & 1:        #先匹配出奇數
        continue     #遇到奇數則跳過
    else:
        print(i)     #成功輸出偶數

#break用法
count=0
for i in range(7,1000,7):
    print(i)
    count+=1
    if count>=20:
        break      #直接結束循環

for i in range(10):
    print(i)
    break     ##在輸出第一個數字0之後立即退出循環,因此本程序只輸出一個0


for i in range(20):
    print(i)
    if i>=10:
        break      #break雖然在if條件語句下,但是break在執行時的生效對象是for循環       

注意:continue和break只對循環有效,即使他們放在了條件判斷語句下,生效對象也是其上層的循環

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章