天天看點

4、初學python之流程控制語句python流程控制語句

python流程控制語句

文章目錄

  • python流程控制語句
    • 選擇結構
    • 循環結構
      • for語句
      • while語句
      • continue和break
    • 練習
    • 答案

程式設計中流程控制語句一般都是有以下三種:

  • 順序結構:按照自上向下,依次執行相應的語句。
  • 選擇結構:用于判斷給定的條件,根據判斷的結果判斷某些條件,根據判斷的結果來控制程式的流程。
  • 循環結構:在程式中需要反複執行某個功能而設定的一種程式結構。

選擇結構

Python 條件語句是通過一條或多條語句的執行結果(True 或者 False)來決定執行的代碼塊。

一般形式為:

if <條件1>:
    <事件1>
elif <條件2>:
    <事件2>
else:
    <事件3>
           

意思是:

先進行判斷條件1,如果條件1成立,則運作事件1,其他事件就不運作;

如果條件1不成立,再判斷條件2,如果條件2成立,則運作事件2,其他事件不運作;

如果條件1和條件2都不成立,那麼運作事件3,其他事件不運作。

注意:

每個條件的後面要有一個冒号,表示接下來是滿足條件後需要執行的語句塊。

要使用縮進來劃分語句塊,相同縮進數的語句在一起組成一個語句。

score = int(input("請輸入你的成績:")) # 用int()方法是因為,使用input()擷取的是字元串,需要轉變為整數型,才能進行分數比較
if(score >= 90):
    print("你的成績是優秀的!")
elif(score >= 80):
    print("你的成績是良好的!")
elif(score >= 70):
    print("你的成績是中等的!")
elif(score >= 60):
    print("你的成績一般!")
else:
    print("你的成績不合格!")
           

在上述代碼中,如果輸入的成績是90-100分區間的,那麼就會輸出成績優秀;如果輸入的成績是80-90分區間的,那麼會輸出成績良好,其他的也類似,根據不同的條件輸出不同的語句。

if語句裡也可以嵌套,即一個if語句裡再加一個if語句。

num = int(input("請輸入一個數字:"))
if num%2==0:
    if num%3==0:
        print("你輸入的數字可以整除2和3")
    else:
        print("你輸入的數字可以整除2,但不能整除3")
else:
    if num%3==0:
        print("你輸入的數字可以整除3,但不能整除2")
    else:
        print("你輸入的數字不可以整除2和3")
           

循環結構

python中的循環語句有for和while。

for語句

首先先了解一個函數:range(start,stop[,step]),參數說明:

  • start: 計數從 start 開始。預設是從 0 開始。例如range(5)等價于range(0, 5);
  • stop: 計數到 stop 結束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5
  • step:步長,預設為1。例如:range(0, 5) 等價于 range(0, 5, 1)

一般和for循環語句搭配使用。

for i in range(0,5):
    print(i)
           

上面的代碼意思為:

使用for循環來周遊可疊代對象,即一次一次輸出 i 的值,而 i 的值是range(0,5)賦予的。輸出的結果為

1

2

3

4

循環輸出1-10的數字。

for i in range(1,10): # i隻是一個變量名,可以随意修改
    print(i)
           

輸出10遍hello world

for i in range(10):
    print("hello world")
           

輸出10以内的正偶數

for num in range(1,10):
    if num%2==0:
        print(num)
           

while語句

while語句也需要注意縮進格式,一般形式為:

while <條件>:
    <事件>
           

使用while語句計算1到100的總和

a=1 # 初始值為1
count=0 # 記錄綜合
while a<=100:
    count = count + a
    a = a + 1
print(count) # 輸出結果為5050
           

continue和break

break 語句可以跳出 for 和 while 的循環體。如果你從 for 或 while 循環中終止,任何對應的循環 else 塊将不執行。

continue 語句被用來告訴 Python 跳過目前循環塊中的剩餘語句,然後繼續進行下一輪循環。

n = 5
while n > 0:
    n -= 1
    if n == 2:
        break
    print(n)
print('循環結束。')
           

輸出結果為:

4
3
循環結束。
           
n = 5
while n > 0:
    n -= 1
    if n == 2:
        continue
    print(n)
print('循環結束。')
           

輸出結果為:

4
3
1
0
循環結束。
           

練習

1、輸出1-100中所有可以被3整除的數。

2、輸入三個整數,把這三個整數按從大到小的順序輸出

3、分别用while和for語句編寫程式,計算整數100到1000的和。

4、輸出九九乘法表

答案

1、

# 使用while循環
a=1 # 初始值為1
while a<=100:
    if a%3==0:
        print(a)
    a=a+1
    
# 使用for循環
for i in range(1,101): # 因為range()的區間是不包括最右邊那個數的,是以這裡是101
    if i%3==0:
        print(i)
           

2、

print("請輸入三個整數")
a=int(input("請輸入第一個整數:"))
b=int(input("請輸入第二個整數:"))
c=int(input("請輸入第三個整數:"))
if a>b:
    if b>c:
        print(a,b,c)
    else:
        if a>c:
            print(a,c,b)
        else:
            print(c,a,b)
else:
    if b>c:
        if a>c:
            print(b,a,c)
        else:
            print(b,c,a)
    else:
        print(c,b,a)
           

3、

# 使用while循環
i=100
count=0
while i<1000:
    count+=i # count=count+1的縮寫
    i+=1
print(count)

#使用for循環
count=0
for i in range(100,1000):
    count+=i
print(count)
           

4、

for i in range(1,10):
    for j in range(1,i+1):
        # str()是将整數變量轉變為字元串,使其能夠用print()輸出
        print(str(j)+"×"+str(i)+"="+str(i*j),end="\t") #print()的參數end,表示輸出内容後的結尾,預設是換行,這裡是用\t來設定輸出格式
    print() # 用于換行
           

作者:阿濤

CSDN部落格首頁:https://blog.csdn.net/qq_43313113

如有不對的地方,歡迎在評論區指正

歡迎大家關注我,我将持續更新更多的文章