Python 教學

很快地來到了第六章最重要的Python控制結構,不管什麼程式語言,

控制結構都是很常用的,if.....else....,中文說明如下:

控制結構(Control Structures)是一個依據目前的參數值以及邏輯判斷式等條件,

來決定下一個執行之程式碼的結構,也就說程式碼的執行順序是根據控制結構來決定,

希望讀者們了解各個控制結構的特性以及相關指令使用的方式與時機,

藉由熟悉控制結構指令之使用方式,來藉以增進實務應用的能力。

#課程目錄

#1. Python if 的架構

#2. Python if else的架構

#3. Python if elif else的架構

#4. Python while與for 迴圈介紹

#練習題解答

#其他課程


 

#1. Python if 的架構

其基本的架構用白話文範例:

if 就等於如果

如果寫程式能賺錢 就給我一個讚 

if 寫程式能賺錢:

    給我一個讚

就是這麼簡單,這麼輕鬆!

實際範例:

def testfunction(vaule):                              # 建立有參數的函式 testfunction
    if vaule >= 80:                                        # if 指令,其邏輯判斷式為 vaule >= 80
        print("A+")                                         # 判斷為真(True)時,執行此程式區塊

vaule = int(input("請輸入數值: "))               # 第一個執行的指令
testfunction(vaule)                                     # 呼叫執行 testfunction 函式

image

練習題: 請以函式方式撰寫一個程式,當使用者輸入 60 以上的整數時,

螢幕出現字元序列 Good,輸入小於 60 的整數時,螢幕出現字元序列 Bad

#頁首


 

#2. Python if else的架構

這邊也是由阿毛來簡單說明一下什麼是if....else....,

簡單的白話範例

如果.....其他....

如果 寫程式賺錢:

    給我一個讚

其他

    努力接案子

可能很多人會覺得判斷式很困難,

但是用白話看起來就是這樣的簡單明瞭

更細項的說是 只要如果裡面的條件不成立 全部都會跑到其他

就是說一定會讓程式跑進去這個判斷式

實際範例

def example(value):                              # 建立判斷成績好不好的函示
    if value >= 60:                              # if 指令,其邏輯判斷式為 value >= 60
        print("成績不錯")                        # 若判斷式判斷為真(True)時執行
    else:
        print("還需再努力")                      # 若判斷式判斷為假時執行

value = int(input("請輸入您的成績: "))           # 第一個執行的指令
example(value)                                   # 呼叫執行 example 函式

image

if.....else....還想要在加 if...else 要怎麼操作呢?

如以下實際範例

def sample(user_score, final_exam):         # 定義一個函式,其函式名稱為 sample
    if user_score >= 60:                    # 判斷式如果為真,執行以下的程式區塊
        print("及格")                     
    else:                                   # 判斷式如果為假,執行以下的程式區塊
        if final_exam:                      # 判斷式為布林代數,只有真與假,若是真,執行以下程式區塊
            print("恭喜前段班")           
        else:                               # 若是假,則執行以下程式區塊
            print("天啊")                 
                                          
score = int(input("請輸入成績:\n"))         # 第一個執行的指令
final = int(input("請輸入最後成績:\n"))     # 第二個執行的指令
final_test = (final >= 80)                  # 利用比較運算子 >= 來判定判斷式為真或是為假
                                          
sample(score, final_test)                   # 呼叫執行函式

image

這邊阿毛要教大家if....else...更簡潔的寫法

示範如下

x=9                                                        # 先指定參數 x 的值為整數 9
if x == 7:                                                 # 判斷式若成立,亦即為真時,則列印字串 "True"
    print("True")
else:                                                      # 若為假則列印字串 "False"
    print("False")

# 上面 if/else 的程式,可以使用下列兩個中任何一個取代
print("True" if x == 7 else "False")
print([ "False", "True" ][ x == 7 ])

image

練習題: 請寫一個程式,當使用者輸入 -10 到 10 之間的數字時,

螢幕上出現字串 OK,輸入其他數字時,螢幕上出現字串 NG

#頁首


 

#3. Python if elif else的架構

這個架構與 if  else的架構,算是大同小異,

就是說如果您判斷的條件比較多,可以使用elif去增加條件

白話文範例

if 寫程式賺錢 :

  給阿毛一個讚

elif 睡覺也賺錢:

  給阿毛兩個讚

else:

  給阿毛三個讚

而elif 可以一直增加,所以即使您想判斷很多條件也都不是問題喔

如以下實際範例

def sample(semester_score, final_exam):   # 定義一個函式,其函式名稱為 sample
    if semester_score >= 60:              # 邏輯判斷式如果為真,執行以下的程式區塊
        print("恭喜")
    elif final_exam:                      # 再判斷判斷式,若結果為真,則執行以下的程式
        print("恭喜")
    else:                                 # 若是假,則執行以下程式區塊
        print("讚喔")

score = int(input("請輸入成績\n"))        # 第一個執行的指令
final = int(input("請輸入最後成績\n"))    # 第二個執行的指令
final_decide = (final >= 80)              # 利用比較運算子 >= 來判定判斷式為真或是為假

sample(score, final_decide)               # 呼叫執行函式

image

 


 

#4. Python while與for 迴圈介紹

while這個就比較不好用白話文來比喻了....

只好來個實際範例囉~

def example():                                       # 定義一個沒有輸入參數的 example 函式
    num = 2                                             # 設定整數參數 num 的值為 2

    while num <= 1000:                                  # 只要判斷式的結果為真,就執行以下程式
        num *= 2                                        # 參數 num 的值乘以 2

    print("The num is ", num)                        # 列印結果於螢幕上
    
example()                                            # 第一個執行的指令,呼叫並執行example函式

image

其實會用到的迴圈通常會以for居多

現在就來講講for的架.....也是個不好說明的東西

所以我們就直接上範例吧!哈哈哈!

data='Amobendong'    # 建立一個字串,並作為 for 指令的序列資料
for i in data:     # 參數名稱 i 利用 in 指令將字串的每個字元依序取出
    print(i)       # 將取出之字元利用函式 print() 列印至螢幕上

image

data=[4, 5, 'Amo', 6, 'Dong']     # 建立一個清單,並作為 for 指令的序列資料
for i in data:                    # 參數名稱 i 利用 in 指令將清單的每個值依序取出
    print(i)                      # 將取出之元素值利用函式 print() 列印至螢幕上

image

data=(1, 2, 3, 'Amo', '4', 'Ben') # 建立一個元組,並作為 for 指令的序列資料
for i in data:                    # 參數名稱 i 利用 in 指令將元組的每個值依序取出
    print(i)                      # 將取出之元素值利用函式 print() 列印至螢幕上

image

sample = {               # 建立一個字典,並作為 for 指令的序列資料
    "Name":"小明",
    "TEL":"0987987987",
    "Address":"亞利安星球",
    "number":"000123"}
for i in sample:         # 參數名稱 i 利用 in 指令將字典的每個Key依序取出
    print(i)                # 將取出之Key利用函式 print() 列印至螢幕上

image

sample = {                     # 建立一個字典,並作為 for 指令的序列資料
    "Name":"小明",
    "TEL":"0987987987",
    "Address":"亞利安星球",
    "number":"000123"}
for i in sample.values():      # 參數名稱 i 利用 in 指令將字典每個Key的資料依序取出
    print(i)                      # 將取出之資料利用函式 print() 列印至螢幕上

image

sample = {                      # 建立一個字典,並作為 for 指令的序列資料
    "Name":"小明",
    "TEL":"0987987987",
    "Address":"亞利安星球",
    "number":"000123"}
for i in sample.items():        # 參數名稱 i 利用 in 指令將字典的每個Key以及資料依序取出
    print(i)                    # 將取出之Key以及資料利用函式 print() 列印至螢幕上

image

sample = {                                                        # 建立一個字典,並作為 for 指令的序列資料
    "Name":"小明",
    "TEL":"0987987987",
    "Address":"亞利安星球",
    "number":"000123"}
count=1                                                           # 建立一個整數參數 count,並設定初值為 1

for x, y in sample.items():                                       # 將字典中的每個Key以及資料取出,並分別指定給參數名稱 i 以及 j 
    print("第", count, "個 key 為", x, "   其相對應的資料為", y)
    count+=1                                                      # 整數參數 count 的值加 1

image

for data in range(0,3):                                    # 利用函式 range() 取值,值依序為 0, 1, 2
    print(data)

print('\n')
for data in range(0,7, 2):                                 # 利用函式 range() 取值,值依序為 0, 2, 4, 6,間隔為 2
    print(data)

print('\n')
for data in range(3,0,-1):                                 # 利用函式 range() 取值,值依序為 3, 2, 1
    print(data)

print('\n')
for data in range(6,0,-2):                                 # 利用函式 range() 取值,值依序為 6, 4, 2,間隔為 -2
    print(data)

image

#頁首


 

#練習題解答

練習題: 請以函式方式撰寫一個程式,當使用者輸入 60 以上的整數時,

螢幕出現及格,輸入小於 60 的整數時,螢幕出現不及格

def sample(scorce):
    if scorce >= 60:
        print('及格')
    else:
        print('不及格')

scorce = int(input('請輸入成績:'))
sample(scorce)

image

 

練習題: 請寫一個程式,當使用者輸入 -10 到 10 之間的數字時,

螢幕上出現字串 OK,輸入其他數字時,螢幕上出現字串 NG

def sample(scorce):
    if scorce >= -10 and scorce <= 10:
        print('OK')
    else:
        print('NG')

sample(int(input('請輸入數字:')))

image

 


阿毛本章節先到這邊唷!其實到這邊各位的基礎已經打得差不多囉!先恭喜各位讀者唷~

再來要講的是pandas與numpy套件的使用喔!這兩的套件,非常的萬用,一定不能錯故喔

如果覺得阿毛文章內容不錯的,可以幫阿毛按個讚,如果覺得內容有哪些地方需要加強,也可以留言給我喔!

謝謝各位讀者的觀看!

 回阿毛便當首頁

#頁首



 

#其他課程

Step 1.(安裝Python)連英文都看不懂的人如何簡單學Python呢?

Step 2.簡單 Python 教學 免費學-JupyterNotebook 使用

Step 3.簡單 Python 教學 免費學-算術運算子 教學

Step 4.簡單 Python 教學 免費學-Python 資料型態

Step 5.簡單 Python 教學 免費學-Python 字典與函式

 

arrow
arrow
    創作者介紹
    創作者 AmoBendong 的頭像
    AmoBendong

    阿毛便當-美食與生活點滴

    AmoBendong 發表在 痞客邦 留言(0) 人氣()