顯示具有 if...else用法 標籤的文章。 顯示所有文章
顯示具有 if...else用法 標籤的文章。 顯示所有文章

2019年10月21日 星期一

Python控制結構教學(十一) 簡單計算機實作

Python實作時間到!看看之前教學系列你學會了幾招!


Python實作時間到!看看之前教學系列你學會了幾招!



Python教學 今天是要大家練練手, 來進行 Python 項目實作,運用這系列教的來做一個簡單的計算器。本實作應用了 Python 的基本函數與概念:while 迴圈if 條件判斷式elif 寫法type conversion類型轉換
每個部分說明了 Python 程式的不同部分。

第一部分是計算機的起始畫面,讓用戶一直不斷輸入,直到用戶輸入「exit」為止,因此使用了while 迴圈
while True:
   print("選項:")
   print("輸入 '+' 讓兩個數值互加")
   print("輸入 '-' 讓兩個數值互減")
   print("輸入 '*' 讓兩個數值互乘")
   print("輸入 '/' 讓兩個數值互除")
   print("輸入 'exit' 來結束程式")
   user_input = input(": ")

   if user_input == "exit":
      break
   elif user_input == "+":
      ...
   elif user_input == "-":
      ...
   elif user_input == "*":
      ...
   elif user_input == "/":
      ...
   else:
      print("不知道你在輸入什麼")  

上述程式還沒寫完,只完成了起始畫面與結構。接下來我們針對每個小部分來寫 Python 程式碼:
加法的部分:
elif user_input == "+":
    num1 = float(input("請輸入數字:"))
    num2 = float(input("請輸入另一個數字:"))

現在,當用戶輸入「+」後,程式就會提示輸入兩個數字。以上我們使用 float()函數,來將用戶輸入的數字強制轉變成浮點數。但是若用戶輸入的不是數字,程式就會 GG。
接下來,我們寫的程式碼,是用來執行用戶輸入的兩個數字,完成加總並且將結果輸出。Python 程式碼如以下所示
elif user_input == "+":
    num1 = float(input("請輸入數字:"))
    num2 = float(input("請輸入另一個數字:"))
    result = str(num1 + num2)
    print("答案是 " + result)

以此類推,減法的部分為:
elif user_input == "-":
    num1 = float(input("請輸入數字:"))
    num2 = float(input("請輸入另一個數字:"))
    result = str(num1 - num2)
    print("答案是 " + result)

以此類推,乘法的部分為:
elif user_input == "*":
    num1 = float(input("請輸入數字:"))
    num2 = float(input("請輸入另一個數字:"))
    result = str(num1 * num2)
    print("答案是 " + result)

以此類推,除法的部分為:
elif user_input == "/":
    num1 = float(input("請輸入數字:"))
    num2 = float(input("請輸入另一個數字:"))
    result = str(num1 / num2)
    print("答案是 " + result)

程式寫好,執行成果如下:

 



相關文章 

2019年10月5日 星期六

Python控制結構教學(二)else條件判斷

Python教學又來囉!else的功能是什麼呢?



Python教學又來囉!else的功能是什麼呢?



Python教學 時間又來啦!上一篇文章中Python控制結構2.if else條件判斷(1),我們已經知道 if...else 的 if 的用法,對吧!這一篇就要來說說 else 的功能啦!
Python 的 if...else 條件判斷式,除了單純的 if 設定一組條件之外,還可加上 else...if 或 else 增加條件。每一個 if,都可以設定不同的條件。例如:今天你要寫出一個Python程式,判斷你所輸入的樂團名稱「Megadeth」,是否在四大鞭擊金屬樂團之列。則程式如下例所示:

bandname = "Metallica"
if bandname == "Megadeth":
    print("無庸置疑,Megadeth 無論在歌曲的編制、樂句的表現與技巧的專精,都勝過其他的鞭擊金屬樂團。")
else: 
    if bandname == "Metallica":
        print("Metallica 也是四大鞭擊金屬樂團之一。但是最好的是前四張專輯")
    else:
        if bandname == "Anthrax":
            print("Anthrax 也是四大鞭擊金屬樂團之一。但是地位不如 Megadeth 與 Metallica")
        else: 
            if bandname == "Slayer":
                print("Slayer 確實是四大鞭擊金屬樂團之一。但是我對他們不熟")
            else:
                print("你輸入的樂團名稱不在四大鞭擊金屬樂團之中")

結果顯示如下:

>>>
Metallica 也是四大鞭擊金屬樂團之一。但是最好的是前四張專輯
>>>

以上Python的例子,你可以把樂團名稱換成 "Megadeth"、"Anthrax"、"Slayer" 或是其他的名稱試試看喔!
else if 可以縮寫成「elif」,承上方的例子,把所有的 else if 都改成「elif」則結果如下例所示(下例也把樂團名稱改成 "Megadeth"):

bandname = "Megadeth"
if bandname == "Megadeth":
    print("無庸置疑,Megadeth 無論在歌曲的編制、樂句的表現與技巧的專精,都勝過其他的鞭擊金屬樂團")
elif bandname == "Metallica":
    print("Metallica 也是四大鞭擊金屬樂團之一。但是最好的是前四張專輯")
elif bandname == "Anthrax":
    print("Anthrax 也是四大鞭擊金屬樂團之一。但是地位不如 Megadeth 與 Metallica")
elif bandname == "Slayer":
    print("Slayer 確實是四大鞭擊金屬樂團之一。但是我對他們不熟")
else:
    print("你輸入的樂團名稱不在四大鞭擊金屬樂團之中")

結果顯示如下:
>>>
無庸置疑,Megadeth 無論在歌曲的編制、樂句的表現與技巧的專精,都勝過其他的鞭擊金屬樂團
>>>

承上例,我們把第一行的 「bandname = "Megadeth"」改成「bandname = "Anthrax"」結果顯示如下:

>>>
Anthrax 也是四大鞭擊金屬樂團之一。但是地位不如 Megadeth 與 Metallica
>>>

承上例,我們再把第一行的 「bandname = "Anthrax"」改成「bandname = "Slayer"」結果顯示如下:

>>>
Slayer 確實是四大鞭擊金屬樂團之一。但是我對他們不熟
>>>

承上例,我們再把第一行的 「bandname = "Slayer"」,將 Slayer 改成隨便一個你知道的樂團名稱,也許結果顯示如下:
>>>
你輸入的樂團名稱不在四大鞭擊金屬樂團之中
>>>




相關文章

速食店龍頭也用AI 人工智慧!點餐.炸薯條這就搞定了!?

IG靠AI人工智慧反擊網路霸凌

暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~

人工智慧點餐不稀奇~現在還能幫你炸薯條雞塊喔!!

聽對音樂可以提升工作效率?!連研究人工智慧的工程師都超推薦!

人工智慧也能幫導演推估票房?怎麼辦到的?

2019年10月4日 星期五

Python控制結構教學(二)if條件判斷式

Python教學又來啦!if指令下下去!


Python教學又來啦!if指令下下去!



Python教學 時間到!在 Python 中,如果有滿足特定的條件,就可以使用 if 指令。要是滿足了某個指定的條件(即是布林值為「True」,若不懂什麼是布林值,請看這篇:Python控制結構1.布林值Boolean-True or False?),則這個程式的片段會被執行。反之,則不執行。


if 指令的語法如下
if <條件>:
   執行的狀況

範例:如果 x 小於 0 則輸出「x 是負數」,而不論 x 的值為何,最後都會輸出「此Python程式結束」。
x=-10
if x < 0:
    print("x 是負數")
print("此Python程式結束")

結果顯示如下:
>>>
x 是負數
此Python程式結束
>>>

呈上例,若 x=10 的話,則結果只會顯示「此Python程式結束」。

有時,if 條件式裡還會有另一組 if 條件式,就形成多層 if 條件式的架構。這種情況稱為「巢狀 if 條件式」。巢狀 if 條件式就好像設定多道關卡,資料必須經過每一道關卡的檢驗。滿足了第一關的條件,才會到第二關。這是用來檢視是否滿足多種條件的方法。如下例,如果要判斷一個人是否可以觀看輔導級、甚至限制級的電影,必須先知道他的年齡。我們把輔導級的年齡設定為 15 歲,限制級的年齡設定為 18 歲。若能觀看輔導級,不見得可以看限制級的電影;但若能看限制級的電影,則輔導級電影也可以看。今天來了一個 17 歲的人,正從以下電影考慮挑一部電影看。他們是:限制級的「藍波:最後一滴血」和輔 15 級的「無間行動」。他的年齡可以看哪一部電影呢?請參考以下程式碼:

age = 17
if age >= 15:
   print("已滿15歲,可以觀賞輔15級的電影")
   if age <18:
      print("未滿18歲不得觀賞限制級的電影")

結果顯示如下:
已滿15歲,可以觀賞輔15級的電影
未滿18歲不得觀賞限制級的電影

因此,他必須放棄「藍波:最後一滴血」這部片子,而選擇「無間行動」。

if 條件判斷式,可以不只有一種條件。若要新增條件的話,就必須要加「else」。else 的用法將在Python控制結構2.if else條件判斷(2)中說明。



相關文章

"最接近神的男人"早就預言人工智慧等科技的出現!?

影響人工智慧等新科技發展是特斯拉還是愛迪生!?

暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~

人工智慧主宰的世界長怎樣?他們用音樂說給你聽!!

可以靠自學成為前端工程師嗎?首先你要先會這個...

''Python''怎麼唸?''派森''還是''派桑''傻傻分不清?