Python流程控制

Python流程控制

if條件分支語句

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

  • if單分支語句
#if邏輯語句:
#	語句(塊)
print("Hello,Python")
if True:
    print("向Python致敬,我正在學習Python。")
print("Welldone.")
learning = "py"
if learning == "python":
    print("呵呵,真巧,我也在學習python。")
print("Nice to meet you.")
  • if雙分支語句
# if 邏輯語句1:
#     語句(塊)1
# else:
#     語句(塊)2
learning = "java"
if learning == "python":
    print("呵呵,真巧,我也在學習python。")
else:
    print("小明和你一樣,他也在學java")
print("Nice to meet you.")
learning = input("請輸入你學習的編程語言:")
if learning == "python":
    print("呵呵,真巧,我也在學習python。")
else:
    print("小明和你一樣,他也在學java")
print("Nice to meet you.")
  • if多分支語句

C語言中

if
    if
        if
        else
    else
else

python:elif:else if縮寫爲elif

# if 邏輯語句1:
#     語句(塊)1
# elif 邏輯語句2:
#     語句(塊)2
#     ...
# elif 邏輯語句n-1:
#     語句(塊)n-1
# else:
#     語句(塊)n

根據百分制考試成績返回五級分製成績.

90-100:A

80-90:B

70-80:C

60-70:D

0-60:E

while True:
    scores = int(input("請輸入正確的分數:"))
    if 100 >= scores >= 0:
        break
if scores >= 90:
    grade = 'A'
elif scores >= 80:
    grade = 'B'
elif scores >= 70:
    grade = 'C'
elif scores >= 60:
    grade = 'D'
else:
    grade = 'E'
print("分數等級爲:", grade)

從控制檯輸入一個三位數,判斷其是否爲水仙花數:

153=13+53+33153 = 1^3 + 5^3 + 3 ^3

num1 = int(input("請輸入一個三位數:"))
if num1 == ((num1 % 10) ** 3 + (num1 // 10 % 10) ** 3 + (num1 // 100) ** 3):
    print("這個數爲水仙花數")

while語句

  • 循環語句

    • 所謂循環,就是用來執行部分代碼在一定條件下重複執行的代碼。

    格式:

while 邏輯語句:
    語句()
i = 0
while True:
    print("I Love Python.")
    i += 1
    if i == 5:
        break

(1)利用while來打印1-100的數字:

i = 1
while i<=100:
    print(i)
    i += 1

(2)利用while求1-100的和:

i = 1
sum1 = 0
while i <= 100:
    sum1 += i
    i += 1
print(sum1)

(3)利用while求1-100內所有的偶數和:

i = 1
sum1 = 0
while i <= 100:
    if i % 2 == 0:
        sum1 += i
    i += 1
print(sum1)

(4)求100-999內的所有水仙花數:

i = 100
while i <= 999:
    if i == ((i % 10) ** 3 + (i // 10 % 10) ** 3 + (i // 100) ** 3):
        print(i)
    i += 1

for循環

Python中for,可以用來遍歷任何序列(字符串,列表,元組,etc.)

格式:

for i in 序列:
    語句()
  1. range()

    range(end)#[0,end-1],end爲整數
    range(start,end)#[start,end-1],start和end爲整數
    range(start,end,step)#[start,start+step,start+2*step,...,end)
    for i in range(0, 101, 2):
        print(i, end=' ')
    

(1)利用for來打印1-100的數字:

for i in range(1, 101):
    print(i)

(2)利用for求1-100的和:

sum1 = 0
for i in range(1, 101):
    sum1 += i
print(sum1)

5050

(3)利用for求1-100內所有的偶數和:

sum1 = 0
for i in range(1, 101):
    if i % 2 == 0:
        sum1 += i
print(sum1)

2550

(4)求100-999內的所有水仙花數:

for i in range(100, 1000):
    if i == (i % 10) ** 3 + (i // 10 % 10) ** 3 + (i // 100) ** 3:
        print(i)
        
153
370
371
407

break和continue

  • break用來結束一個循環,跳出循環體。
for i in range(5):
    if i == 3:
        break
    print(i)

0
1
2
  • continue終止本次循環的動作,直接進入下次循環。
for i in range(5):
    if i == 3:
        continue
    print(i)

0
1
2
4

while…else…

count = int(input("Enter a INT:"))
while count<=5:
    print(count,end=" ")
    count += 1
    if count == 3:
        break
else:
    print("這裏是else語句")

Enter a INT:2
2

for…else…

count = int(input("Enter a INT:"))
for i in range(0, count):
    print(i, end=" ")
    if i == 3:
        break
else:
    print("這裏是else語句")
    
Enter a INT:5
0 1 2 3 

當while和for條件判斷爲False的時候執行else

while…else…,for…else…中while和else是一塊的,for和else也是一塊的。

當有break或者return的時候就會跳出while。如果沒有break或者return,不管while是否執行,都會執行else語句

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