第三章 迴圈

迴圈是一種常見的控制流程。是一段在程式中只出現一次,但可能會連續執行多次的程式碼。

迴圈中的程式碼會執行特定的次數,或者是執行到特定條件成立時結束迴圈,或者是針對

某一集合中的所有項目都執行一次

Python 的兩大迴圈:

  • for迴圈: 擁有計數器的迴圈,適合用在以次數作為結束條件的情境。
  • while迴圈: 以條件作為執行與否的迴圈 e.g.

for迴圈:

  • For迴圈能夠讓程式碼反覆的執行。它跟其他的迴圈,如while迴圈,最大的不同,是它擁有一個迴圈計數器,或是迴圈變數。這使得For迴圈能夠知道在迭代過程中的執行順序。

簡單來說,for迴圈以固定數量的變數,作為控制條件的重點。

cat_list = ["Health & Beauty", "Food & Beverages", "Mother & Baby"]
for cat in cat_list:
    #縮排在Python是有意義的,迴圈內的程式必須縮排(Tab)
     print(cat)
'''
#Result:
Health & Beauty
Food & Beverages
Mother & Baby
'''

w_string = "Python"
for letter in w_string:
    print(letter)
'''
#Result:
P
y
t
h
o
n
'''

range():

range() 可以回傳設定條件內的整數到陣列中,其中可以控制的參數有:

  • start: 起始值,預設為0
  • terminal: 終點值(不會顯示終點值)
  • step_size: 間距(兩個數字之前的間隔)
range(terminal)
range(start, terminal)
range(start, terminal, step_size)

範例:

>> range(4)
[0, 1, 2, 3]

>> range(2, 8)
[2, 3, 4, 5, 6, 7]

>> range(2, 13, 3)
[2, 5, 8, 11]

practice:

試著完成下列練習:

#Please use for, if, else to get below result
#Tip: 2%2=1, 4%2=0
'''
1
3
5
7
9
2
4
6
8
10
'''
#-----------------------------------------
numList = [1,2,3,4,5,6,7,8,9,10]
for i in range(0, 2,1):
    if i == 0:
        for num in  numList:
            if num%2 == 1:
                print(num)
            else:
                pass

    elif i == 1:
        for num in  numList:
            if num%2 == 0:
                print(num)
        else:
            pass

Practice:

Pring 99 乘法表 Please use for & range() statements tip1: print('{}{}={}\t'.format(,,), end='') tip 2 print('\n'):換行

2*1=2    2*2=4    2*3=6    2*4=8    2*5=10    2*6=12    2*7=14    2*8=16    2*9=18    

3*1=3    3*2=6    3*3=9    3*4=12    3*5=15    3*6=18    3*7=21    3*8=24    3*9=27    

4*1=4    4*2=8    4*3=12    4*4=16    4*5=20    4*6=24    4*7=28    4*8=32    4*9=36    

5*1=5    5*2=10    5*3=15    5*4=20    5*5=25    5*6=30    5*7=35    5*8=40    5*9=45    

6*1=6    6*2=12    6*3=18    6*4=24    6*5=30    6*6=36    6*7=42    6*8=48    6*9=54    

7*1=7    7*2=14    7*3=21    7*4=28    7*5=35    7*6=42    7*7=49    7*8=56    7*9=63    

8*1=8    8*2=16    8*3=24    8*4=32    8*5=40    8*6=48    8*7=56    8*8=64    8*9=72    

9*1=9    9*2=18    9*3=27    9*4=36    9*5=45    9*6=54    9*7=63    9*8=72    9*9=81
#ANS:
for i in range(2,10):
    for j in range(1,10):
        result = i*j
        print('{}*{}={}\t'.format(i, j, result), end='')

    print('\n')

results matching ""

    No results matching ""