# python 初學者教學 (class 1) ## 準備 線上編輯網站 https://www.onlinegdb.com ==注意 ! 右上角要選擇python== ## 第一章 你一定要知道的程式碼 ### 如何建立變數? 可以直接設定,不需要int如下 ```python= i = 0 ``` 解釋 : ==i 為變數名稱,0 為變數存入的數字。== ### 如何輸出文字? 可以使用print來顯示文字,如下 ```python= print ( ) ``` 解釋 : ==print 為顯示文字指令,( )內則是顯示的文字。== ### 合併起來試試看 ```python= i = 0 print (i) ``` 這樣就會輸出0 解釋 : ==初始化 i = 0,輸出 i ,也就是輸出 0 。== ### 當然,你也可以輸出文字 猜猜看,哪裡錯了? ```python= i = 你好 print (i) ``` ==其實因為中文不是一個數值,所以要加上''或是"" 。== 以下是正確解法 : ```python= i = "你好" print (i) ``` ### 如何輸入文字 可以使用print來顯示文字,如下 ```python= input( ) ``` ### 做一個複讀機 ```python= a = input("請輸入字串\n") print(a) ``` 解釋 : ==使用 input 將變數 a 設定為玩家輸入的字串,並使用 print 輸出,便可以做到複讀機。== ### 做一個計算機(加法) 猜猜看,為甚麼會變成被加數和加數的字拼接? ```python= a = input("請輸入被加數\n") b = input("請輸入加數\n") print(a + b) ``` ==因為系統會以為你要輸出 a 和 b 的字拼接,所以要加入 int( ) 。== 以下是正確解法 : ```python= a = input("請輸入被加數\n") b = input("請輸入加數\n") print(int(a) + int(b)) ``` 也可以這樣 ```python= a = int(input("請輸入被加數\n")) b = int(input("請輸入加數\n")) print(a + b) ``` ==:warning:== ==int後面的( )要包在變數的名稱之間喔 !== ### 如何使用資料庫(也稱列表) *舉例說明 : 有多位學生,老師要登記學生分數,但因學生實在太多,有100個,所以為了減少程式碼,他可以怎麼做 ?* 我們可以用列表來存入資料,如下 ```python= score = [90,80,70,89,100] print (score) ``` ==:warning:== ==一定要是[中括弧]喔 !== 解釋 : ==有五位同學,成績分別是 90,80,70,89,100 ,我們使用 print 把他個個輸出== ### 如何輸出在列表中我們想要的那一個位數 我們可以用元組來抓取,如下 ```python= score = (90,80,70,89,100) print (score[3]) ``` ==:warning:== ==一定要是(小括弧)喔 !== 解釋 : ==print (score[3]) 的3是指第三個數字== ==90是第0個,80是第1個,70是第2個,以此類推...== ### 如何做條件判斷 舉例說明 : 1.如果我肚子餓,我就去吃飯。 2.如果今天下雨,我就開車去上班,否則我就騎車去上班。 我們可以用 if 及 else 來達成,如下 舉例1範例 ```python= hungry = True if hungry == True: print ('我要去吃飯') ``` ==:warning:== ==if 判斷一定要用兩個 = 喔 !== 舉例2範例 ```python= rainy = False if rainy == True: print ('開車去上班') else : print ('騎車去上班') ``` ==:warning:== ==else 後面一定要加 : 並且要換行和 if 對齊喔 !== ### 進階計算機 備註 : 可以使用加減乘除的計算機 我們可以用上面的 if else print input 和 變數 來解答喔 ! 如下 ```python= a = input("請輸入第一個數\n") b = input("請輸入 + 或 - 或 * 或 /\n") c = input("請輸入第二個數\n") if b == "+" : print("答案等於",int(a) + int(c)) elif b == "-" : print("答案等於",int(a) - int(c)) elif b == "*" : print("答案等於",int(a) * int(c)) elif b == "/" : print("答案等於",int(a) / int(c)) else : print("\n不支持的語言") ``` ==:warning:== ==if 判斷一定要用兩個 = 喔 !== 你一定要知道 : ==elif是else if的縮寫,用於在多個條件之間進行選擇。當前面的條件不滿足時,程序會檢查elif後面的條件。== 解釋 : ==a 為第一個數字, b 為加減乘除符號, c 為第二個數,我們使用 if 判斷符號是不是"+",如果不是,那麼就判斷是不是"-",如果不是,就判斷是不是"",如果不是,就判斷是不是"/",如果都不是,就輸出(不支持的語言)== ## 第二章 轉換型態 python型態分為以下三種 : 1.數值型態:int, float, bool 2.字串型態:str, chr 3.容器型態:list, dict, tuple 那麼這裡先教簡單的 int 和 float 和 bool 和 str 。 ### int 是存放整數數字,如下 ```python= a = int(5.7) print(a) ``` ### float 是存放有小數點的數字,如下 ```python= a = float(0.5) print(a) ``` ### 合併起來做加法計算 ```python= a = int(3.5) b = float(7.8) c = int(8.1248795) + a print(a + b + c) ``` 解釋 : ==a 會因為 int 而捨去 0.5 ,而 b 因為是 float 型態,所以小數點不會被捨去,而 c 會因為 int 而捨去 0.1248795 ,相加後得出 21.8== ### :warning:做一個只會復數1-5數字的復讀機:warning: 猜猜看,為甚麼這段指令碼有BUG? ```python= a = input("你好 ! 我是只會復讀0-5數字的復讀機,請輸入要我復讀的數字 : \n") if a <= 5: print(a) else:print("數字大於五,超過標準") ``` 以下是BUG問題 : ``` Traceback (most recent call last): File "/home/main.py", line 20, in <module> if a <= 5: TypeError: '>' not supported between instances of 'str' and 'int' ``` 因為輸入進去的 a 會被系統誤認為字串,由於字串無法做計算,所以要把 a 轉換成 int 型,如下 : ```python= a = int(input("你好 ! 我是只會復讀0-5數字的復讀機,請輸入要我復讀的數字 : \n")) if a <= 5: print(a) else:print("數字大於五,超過標準") ``` ## 結尾 ### 恭喜 恭喜你,學會python的基本知識了! 挑戰看看練習題吧 ! https://hackmd.io/@JonathanYang0731/HkANbanUh ### 若您對python有興趣想繼續學,請點下方連結進入class 2 https://hackmd.io/@JonathanYang0731/BJdq1M083 ### 本次教學到此告一段落 `python` ## 練習題 https://hackmd.io/@JonathanYang0731/HkANbanUh