【Python入門】 - Installation

Python 入門教學


《Anaconda安裝 & 猜拳遊戲實作》


你跟我一樣嗎?曾經想學習程式語言,卻不知從何下手?在這邊推薦程式語言初學的讀者們,以 Python 為你的第一步!

為什麼會推薦使用 Anaconda ?

因為 Anaconda 提供使用者:簡易操作的 UI ,避免操作一開始對於終端機陌生的初學者;此外,Anaconda 包含了許多資料分析師會使用的基礎 Python 套件,有助於分析做矩陣運算的 Numpy ,可以做到樞紐分析、欄位加總的 Pandas ,畫長條圖、折線圖等視覺化工具的 Matplotib ,甚至是讓使用者在網頁介面上開發和維護 Python 語言的Jupyter。

pyt1.PNG


第一步:下載 Anaconda (https://www.anaconda.com/ )

如下圖所示,點選Download下載後,選擇你的作業系統 (Windows/ Mac/Linux ),接著選擇你的系統位元 (32位元或是64位元)。

pyt2.PNG


第二步:安裝 Anaconda (依照預設安裝,default 設定即可)


第三步:認識 Anaconda Spyder Python 介面

pyt3.PNG


接下來就來使用 Python 吧!先打開 Anaconda Navigator,看到上方畫面後,開啟 Spyder。

pyt4.PNG

其介面左邊的區塊是程式碼編輯區塊,編寫後的程式碼即使在Spyder關閉重啟後,程式碼仍然會保留;右上方的資料區變數資料區,可以查看變數的狀況和檔案的位置;右下方的介面區塊,可以顯示程式碼執行的結果。

讓我們用 Python print 出 "AI free team"吧!

請讀者們在左邊的程式碼編輯區塊貼上:

print("AI.Free team")

點選 Run 執行,右下方的介面區塊,就會顯示 " AI.Free team "

pyt5.PNG



覺得這個太簡單?沒關係,讓我們來學個有趣的遊戲,剪刀時頭布吧!我們會用上一些指令,有上方提到的 print,加上 import(匯入)、input(輸入) 、list(列表) 、while loop 以及條件語句 if、elif 來完成這個簡單的小遊戲。


<將下列整個複製貼上至程式碼編輯區>

### 使用 random package 來讓電腦隨機出拳
import random 

### 電腦的出拳選擇
computer_choices = ['石頭', '剪刀', '布'] 

### 遊戲完成的條件(贏的狀況)
break_conditions = [['石頭', '剪刀'], ['剪刀', '布'], ['布', '石頭']] 

### 設定控制變數,讓猜拳遊戲進行
event = "keep playing"

### 用 while loop 開啟遊戲
while event == "keep playing":     
    computer = random.choice(computer_choices)          # 電腦隨機從 choices 裡面的選項出拳
    user = input('請選擇此次出拳~ :')                    # input 為使用者的出拳選擇
    if computer == user:                                # 如果電腦和使用者的出拳一樣則平手,繼續進行猜拳
        print('平手')
        event == "keep playing"
    elif [user, computer] in break_conditions:          # 如果使用者和電腦的結果出現在獲勝條件裡,則玩家獲勝
        print('獲勝!')
        event == "WIN"
        break
    elif [user, computer] not in break_conditions:      # 如果不在獲勝條件裡,則電腦獲勝
        print('很可惜,您輸了')
        event == "LOSE"
        break

pyt6.PNG

程式說明:

(1) 使用 import 匯入套件( random,我們希望能讓電腦在猜拳時會隨機出拳 )

(2) 接著建立一個列表,來決定猜拳時贏的狀況( win_ conditions 定義可能取得勝利的三種情況:如果玩家取得勝利,玩家出石頭時,電腦出剪刀;玩家出剪刀時,電腦出布;玩家出布時,電腦出石頭 )

(3) 設定 while loop 進行遊戲,每回合一開始,設定電腦隨機出拳,再用 input 讓玩家可以輸入出拳選項。

(4) 透過 if 去寫在猜拳時會發生的所有狀況,如果電腦跟玩家出一樣,例如兩人都出剪刀、布或石頭,就會發生平手,即可 print('平手') 給予使用者 Feedback。

(5) 用 elif 設定其他猜拳結果,如果電腦跟玩家出拳的結果在 win_conditions 裡,就代表玩家贏了 print('獲勝'),並停止遊戲 ( 使用break來終止while loop )。

(6) 出拳結果不一樣且也不在win_conditions裡,就代表電腦贏了 ( 使用print('很可惜,您輸了') )


看完上面程式碼,是不是依然對於 Python 相關語法一頭霧水呢?接下來將有更細節的文章,提供給大家認識 Python 更多基礎語法喔!

若有其他疑問或建議,歡迎讀者朋友們跟我們進一步互動! (AI.Free.Team@gmail.com)