Python入門-Day6:流程控制

更新於 2024/05/13閱讀時間約 9 分鐘

if, elif, else

if, elif, else是Python中控制流程的基本結構。我們可以使用這些結構來定義一系列條件判斷,根據不同的情況執行不同的代碼塊。

基本的if語句如下所示:

if condition:
# 做一些事情

當條件為True時,if語句下的代碼塊將被執行。否則,它將被跳過,程序將繼續執行下一個語句。

elif是if語句的一個可選部分,可以用來添加更多的條件判斷。如果第一個if語句的條件為False,程序將繼續檢查elif語句的條件。

else是if語句的另一個可選部分,它在沒有其他條件滿足時執行。else語句在if和elif語句之後,以冒號開始,後面跟著一個代碼塊。

以下是一個適合初學者的if, elif, else範例:

x = 5

if x > 10:
print("x大於10")
elif x > 5:
print("x大於5,但小於等於10")
else:
print("x小於等於5")

在這個例子中,我們定義了一個變量x,然後使用if,elif和else語句來判斷它的值。如果x大於10,則打印“x大於10”。如果x大於5但小於等於10,則打印“x大於5,但小於等於10”。否則,即x小於等於5,則打印“x小於等於5”。

三元運算子

三元運算子是Python中的一種簡短的if語句,可以在一行中執行條件判斷。

基本的三元運算子如下所示:

value_if_true if condition else value_if_false

在這個例子中,如果條件為True,則返回value_if_true。否則,返回value_if_false。

x = 5

value = "x大於等於10" if x >= 10 else "x小於10"

print(value)

在這個例子中,我們定義了一個變量x,然後使用三元運算子來檢查它是否大於等於10。如果是,則返回“x大於等於10”。否則,返回“x小於10”。最後,我們使用print函數打印value的值。

當你運行這段程式碼時,你將只會得到以下輸出:

x小於10

這是因為x的值是5,因此三元運算子返回“x小於10”。

for 迴圈

for循環是Python中另一種基本的控制流程結構,它用於迭代訪問序列中的所有項目。這些項目可以是列表、元組、字典等。

基本的for循環如下所示:

for item in sequence:
# 做一些事情

在這個例子中,我們使用for循環來遍歷序列中的所有項目。在每次迭代中,item變量將被設置為序列中的下一個項目。然後,for語句下的代碼塊將被執行。

numbers = [1, 2, 3, 4, 5]

for number in numbers:
print(number)

在這個例子中,我們定義了一個列表numbers,然後使用for循環來遍歷它的所有項目。在每次迭代中,number變量將被設置為列表中的下一個數字。然後,我們使用print函數打印number的值。

進階範例

lists = ["apple", 1, "banana"]

# 寫法一
for list in lists:
print(list)

# 寫法二
for i in range(len(lists)):
print(lists[i])

# 反轉
for i in range(len(lists)-1,-1,-1):
print(lists[i])

while 迴圈

while循環是Python中的另一種迭代結構,它可以在滿足特定條件時重複執行一段代碼。while循環的基本結構如下所示:

while condition:
# 做一些事情

在這個例子中,當條件為True時,while循環下的代碼塊將被重複執行。否則,它將被跳過,程序將繼續執行下一個語句。

count = 0

while count < 5:
print(count)
count += 1

在這個例子中,我們定義了一個變量count並將其初始化為0。然後,我們使用while循環來檢查count的值是否小於5。如果是,則我們打印count的值並將其增加1。然後,while循環將再次執行,直到count的值大於或等於5為止。

循環嵌套

循環嵌套是一種常見的程式設計技巧,可以用來處理複雜的問題。在Python中,我們可以使用for循環和while循環來進行循環嵌套。

for i in range(1, 4):
for j in range(1, 4):
print(i, j)

在這個例子中,我們使用兩個for循環來遍歷所有的(i, j)組合,其中i的值從1到3,j的值也從1到3。在每次迭代中,i和j變量將被設置為相應的值,然後我們使用print函數打印它們的值。

當你運行這段程式碼時,你將會得到以下輸出:

1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3

在這個例子中,我們使用兩個for循環來遍歷所有的(i, j)組合,其中i的值從1到3,j的值也從1到3。在每次迭代中,i和j變量將被設置為相應的值,然後我們使用print函數打印它們的值。

你可以看到,這個程式碼產生了9個(i, j)組合,每個組合都是由一個i值和一個j值組成的。

控制迴圈語句

控制迴圈語句是Python中的一種特殊語句,它們可以用來控制循環的行為。Python中有三種控制迴圈語句:break、continue和pass。

break

break語句可以用來中斷循環,即使循環的條件還沒有變成False。這在某些情況下非常有用,例如當你需要在找到特定條件的元素後立即退出循環時。

numbers = [1, 2, 3, 4, 5]

for number in numbers:
if number == 3:
break
print(number)

在這個例子中,我們定義了一個列表numbers,然後使用for循環來遍歷它的所有項目。在每次迭代中,number變量將被設置為列表中的下一個數字。然後,我們使用if語句來檢查number的值是否等於3。如果是,我們使用break語句來中斷循環。否則,我們使用print函數打印number的值。

當你運行這段程式碼時,你將只會得到以下輸出:

1
2

這是因為當number的值等於3時,break語句中斷了循環,並且print語句沒有被執行。

continue

continue語句可以用來跳過當前迭代中的一些項目,並繼續進行下一次迭代。這在某些情況下非常有用,例如當你需要跳過某些特定條件的元素時。

numbers = [1, 2, 3, 4, 5]

for number in numbers:
if number == 3:
continue
print(number)

在這個例子中,我們定義了一個列表numbers,然後使用for循環來遍歷它的所有項目。在每次迭代中,number變量將被設置為列表中的下一個數字。然後,我們使用if語句來檢查number的值是否等於3。如果是,我們使用continue語句跳過當前迭代。否則,我們使用print函數打印number的值。

當你運行這段程式碼時,你將得到以下輸出:

1
2
4
5

這是因為當number的值等於3時,continue語句跳過了當前迭代,並且print語句沒有被執行。

pass

pass語句是一種空語句,它不執行任何操作。它通常用於當你需要定義一個函數或類,但是還沒有想好實現細節時。

def my_function():
pass

在這個例子中,我們定義了一個名為my_function的函數,但是我們沒有在函數體中添加任何代碼。相反,我們使用pass語句來告訴Python跳過這個函數。

進階範例:

cmd line的互動功能視窗

import os
while True:
cmdNoContent = '''
1. Exit
2. Continue
3. Pass
4. Hello World!
'''
print(cmdNoContent)
cmdNo = input("Enter a command number: ")
if cmdNo == "1":
break
elif cmdNo == "2":
continue
elif cmdNo == "3":
pass
elif cmdNo == "4":
print("Hello World!")
else:
print("請繼續輸入...")
input("Press any key to continue...")
# Windows清空螢幕
os.system("cls")
    avatar-img
    15會員
    111內容數
    日後將分享關於我的經驗(日常、工作、技術),並期待未來能創造屬於我的宇宙。
    留言0
    查看全部
    avatar-img
    發表第一個留言支持創作者!
    Michael楊 的其他內容
    本文介紹了各種運算符的用法和優先級,包括算術運算符、比較運算符、賦值運算符、邏輯運算符、位元運算符、成員運算符和身份運算符。每種運算符都有詳細的描述和示例程式碼,幫助理解其功能和用法。
    本文詳細介紹了Python中的各種資料型別,包括整數、字串、清單、元組、集合和字典,並提供了相關的操作範例。此外,還解釋了如何在Python中定義和操作變數,包括如何同時對多個變數進行賦值。
    Python語法包括條件語句、迴圈、函數和變數的使用。條件語句如if、elif和else用於進行條件判斷,for和while是兩種主要的迴圈,def用於定義函數。變數可以被賦予數字或字符串,並可使用類型提示來指定變數的類型。註解可以是單行或多行,並可用於解釋函數或類的用途和作用。
    Python是一種易學且功能強大的程式語言,具有直譯、動態語法等特性,並擁有豐富的標準庫。它在各領域如Web開發、數據科學和人工智慧等得到廣泛應用,並被許多大公司如Google和Facebook等使用。Python還有強大的框架、豐富的交互機能、和龐大的社區。
    元大期貨股份有限公司 20倍: AUDCAD、AUDCHF、AUDJPY、AUDNZD、AUDUSD、NZDCAD、NZDCHF、NZDJPY、NZDUSD、USDHKD、USDCNH、USDSEK、EURAUD、EURNZD、GBPAUD、GBPNZD、USDSGD 30倍: CADCHF
    本文介紹了各種運算符的用法和優先級,包括算術運算符、比較運算符、賦值運算符、邏輯運算符、位元運算符、成員運算符和身份運算符。每種運算符都有詳細的描述和示例程式碼,幫助理解其功能和用法。
    本文詳細介紹了Python中的各種資料型別,包括整數、字串、清單、元組、集合和字典,並提供了相關的操作範例。此外,還解釋了如何在Python中定義和操作變數,包括如何同時對多個變數進行賦值。
    Python語法包括條件語句、迴圈、函數和變數的使用。條件語句如if、elif和else用於進行條件判斷,for和while是兩種主要的迴圈,def用於定義函數。變數可以被賦予數字或字符串,並可使用類型提示來指定變數的類型。註解可以是單行或多行,並可用於解釋函數或類的用途和作用。
    Python是一種易學且功能強大的程式語言,具有直譯、動態語法等特性,並擁有豐富的標準庫。它在各領域如Web開發、數據科學和人工智慧等得到廣泛應用,並被許多大公司如Google和Facebook等使用。Python還有強大的框架、豐富的交互機能、和龐大的社區。
    元大期貨股份有限公司 20倍: AUDCAD、AUDCHF、AUDJPY、AUDNZD、AUDUSD、NZDCAD、NZDCHF、NZDJPY、NZDUSD、USDHKD、USDCNH、USDSEK、EURAUD、EURNZD、GBPAUD、GBPNZD、USDSGD 30倍: CADCHF
    你可能也想看
    Google News 追蹤
    Thumbnail
    *合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
    Thumbnail
    初入IT產業的人士在學習Python語言後,IT證照如ITS Python認證是否值得考取?本文以ITS證照特點、實施建議和IT認證考試資訊為主,詳述證照的好處和準備時間。
    Thumbnail
    如何用Python匯入大批Excel檔案? os.listdir建立資料夾內[檔案名稱.副檔名]之列表 利用迴圈將所有檔案匯入Python 用pandas.concat合併所有DataFrame
    Thumbnail
    本文將介紹 Python 中的字符串操作方法與輸入輸出,從基本的索引、切片到進階的字符串方法,還有如何進行輸入輸出操作,這對於文本處理和用戶交互來說非常重要。
    Thumbnail
    網路爬蟲(web crawler),也叫網路蜘蛛(spider) 是一個強大的自動化工具,可以自由瀏覽、擷取訪問網頁的各項資訊,例如:新聞文章、電商商品價格,當專案中需要添加外部數據或進行大量資料收集時,網路爬蟲就是一個非常實用的工具。
    Thumbnail
    Python 是一個易於學習且功能強大的高級程式語言,它廣泛用於軟件開發、數據科學、人工智能和網站開發等領域。本教學將帶您入門 Python,讓您了解基本語法和常用功能。讓我們開始吧!
    Thumbnail
    資料分析工具百百種,有容易操作資料、視覺化的BI工具、常用於各領域的分析模型套裝軟體等等,但對於想做資料分析、資料科學的人,「程式語言」可以說是現今不可或缺的能力,而R與Python則可以稱為資料科學領域最熱門的兩個程式語言,這篇文章主要想分享R與Python的使用情境,以及分享網路上一些資源。
    在這篇教學中,我們將介紹如何使用Python的openpyxl套件將資料寫入Excel文件。openpyxl是一個功能強大的函式庫,可以讓我們輕鬆地處理Excel文件。
    Thumbnail
    剛開始學一個新的語言,第一個面臨的問題就是,需要先學習架設程式語言的環境。為了避免架設環境而降低學習的熱情,我們可以先使用 Repl.it 協助我們先練習Python 的基本語法。
    Thumbnail
    該篇文章首要為 1.下載python與文字編輯器vs code (Visual Studio Code) 2.撰寫第一支python程式
    Thumbnail
    資料科學家、數據分析師是近幾年新興,而且熱門的職業,而DataCamp是一個專精於資料科學的程式教學網站。在實務上會用到的各種知識與程式技能,從流程面的網路爬蟲、數據清洗、資料視覺化,到技術面的Python、R語言、SQL,在DataCamp上幾乎都可以找到相關教學。
    Thumbnail
    *合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
    Thumbnail
    初入IT產業的人士在學習Python語言後,IT證照如ITS Python認證是否值得考取?本文以ITS證照特點、實施建議和IT認證考試資訊為主,詳述證照的好處和準備時間。
    Thumbnail
    如何用Python匯入大批Excel檔案? os.listdir建立資料夾內[檔案名稱.副檔名]之列表 利用迴圈將所有檔案匯入Python 用pandas.concat合併所有DataFrame
    Thumbnail
    本文將介紹 Python 中的字符串操作方法與輸入輸出,從基本的索引、切片到進階的字符串方法,還有如何進行輸入輸出操作,這對於文本處理和用戶交互來說非常重要。
    Thumbnail
    網路爬蟲(web crawler),也叫網路蜘蛛(spider) 是一個強大的自動化工具,可以自由瀏覽、擷取訪問網頁的各項資訊,例如:新聞文章、電商商品價格,當專案中需要添加外部數據或進行大量資料收集時,網路爬蟲就是一個非常實用的工具。
    Thumbnail
    Python 是一個易於學習且功能強大的高級程式語言,它廣泛用於軟件開發、數據科學、人工智能和網站開發等領域。本教學將帶您入門 Python,讓您了解基本語法和常用功能。讓我們開始吧!
    Thumbnail
    資料分析工具百百種,有容易操作資料、視覺化的BI工具、常用於各領域的分析模型套裝軟體等等,但對於想做資料分析、資料科學的人,「程式語言」可以說是現今不可或缺的能力,而R與Python則可以稱為資料科學領域最熱門的兩個程式語言,這篇文章主要想分享R與Python的使用情境,以及分享網路上一些資源。
    在這篇教學中,我們將介紹如何使用Python的openpyxl套件將資料寫入Excel文件。openpyxl是一個功能強大的函式庫,可以讓我們輕鬆地處理Excel文件。
    Thumbnail
    剛開始學一個新的語言,第一個面臨的問題就是,需要先學習架設程式語言的環境。為了避免架設環境而降低學習的熱情,我們可以先使用 Repl.it 協助我們先練習Python 的基本語法。
    Thumbnail
    該篇文章首要為 1.下載python與文字編輯器vs code (Visual Studio Code) 2.撰寫第一支python程式
    Thumbnail
    資料科學家、數據分析師是近幾年新興,而且熱門的職業,而DataCamp是一個專精於資料科學的程式教學網站。在實務上會用到的各種知識與程式技能,從流程面的網路爬蟲、數據清洗、資料視覺化,到技術面的Python、R語言、SQL,在DataCamp上幾乎都可以找到相關教學。