iT邦幫忙

2021 iThome 鐵人賽

DAY 11
1
Software Development

宇宙 69 大魔王的 python 世界系列 第 11

【Day 11】For 迴圈

前言

今天要來介紹一點 for 迴圈,因為接下來的 list 會用到!會介紹一些基本的 for 的用法,range() 等函式。讓我們開始吧!

For Loops

for loop 常用於可迭代的資料容器(list, tuple, dictionary, set)或是字串,可以把一個 list 的所有元素 run 一遍

  • 語法:

    for 迴圈跑一個 list。

    color = ['red', 'yellow', 'blue', 'orange']
    for x in color:
        print(x)
    

    for 迴圈跑一個 string,順便申裝中華電信 ADSL ㄏㄏ

    for x in 'ADSL':
        print(x)
    

  • break:可以用來跳出現在這個 for loop。

    break 跳出迴圈,並配合 if 判斷遇到的元素,在特定的位置跳出 for loop

    color = ['red', 'yellow', 'blue', 'orange']
    for x in color:
        print(x)
        if x == 'blue':
            print('break!')
            break
    

  • continue:可以跳過現在回圈迭代到的元素,直接到下一個元素。

    color = ['red', 'yellow', 'blue', 'orange']
    for x in color:
        if x == 'blue':
            continue
        print(x)
    

  • range():當我們想要回圈重複特定次數的話可以使用這個函式。

    從 0 到(8-1)

    for x in range(8):
        print(x, end = ' ')
    

    • range(start, stop):加初始的值。

      for x in range(2, 8):
          print(x, end = ' ')
      

    • range(start, stop, step):加初始的值,一次加多少數字

      唯一必要的值只有 stop

      for x in range(2, 25, 4):
          print(x, end = ' ')
      

    • else 當 loop 結束時會跳到 else,可用來檢查迴圈是否有確實執行完畢。

      for x in range(2, 25, 4):
          print(x, end = ' ')
      else:
          print('final!')
      

  • 巢狀迴圈:使用兩個以上的 for 迴圈疊起來就是巢狀迴圈了!

    adj = ['young', 'strong', 'weak']
    human = ['kid', 'man', 'woman']
    for x in adj:
        for y in human:
            print(x, y)
    

  • 九九乘法表:這裡提供兩種方法,一種是使用 format 函式,一種是用 print 內直接疊加的方式,end = '\t' 為結束時對齊的函式。

    for x in range(1, 10):
        for y in range(1, 10):
            print('{}*{}={}'.format(x, y, x * y), end = '\t')    #方法1
            print(x, '*', y, '=', x * y, sep = '', end = '\t')    #方法2
        print('')
    

待續...


上一篇
【Day 10】While 迴圈
下一篇
【Day 12】Set 介紹
系列文
宇宙 69 大魔王的 python 世界30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言