每日來一點Python吧~(8)函式

更新於 發佈於 閱讀時間約 3 分鐘



在19??年(不重要),這個是我很迷的遊戲,送報僮

因為這個遊戲很簡單,又很有成就感。

怎麼說呢?

先簡略介紹這款遊戲好了。

  • 這款遊戲當年是在Dos系統下操作。
  • 開始遊戲的時候,可以先選擇男生送報僮,或是女生送報僮。
  • 必須將報紙丟入郵筒,才會得分。
  • 必須用報紙丟準路上的障礙,包括修車行甩出的輪胎,衝出院子的狗,會追人的ghost...等,才不會game over。
  • 亂丟住家玻璃或路人,會扣分。


現在拿出來複習這遊戲,感覺這真是一款社會寫實的遊戲啊。

但還沒說玩這款遊戲的成就感是甚麼。

我在玩這款遊戲時,網路才剛起飛。關鍵字下去搜尋引擎,出來不到幾筆的資料。除了當時很紅的網路聊天室,用來打字練習外,唯一有機會一直按鍵盤的,就是這個這個遊戲了。

嗯...一直按鍵盤,很好玩,鍵盤的聲音,喀喀喀的很好聽,這應該就是當時的我成就感吧!

再加上,避開每一關卡,歷經多次努力,到達終點破關,當時我想這就是學習電腦的意義吧!(誤)

考證照,就像打遊戲破關一樣。會遇到多次的失敗,但每次game over後,能否再次保持信心闖關,不斷地,就會進步,最終到達終點破關(拿到證照)。


但是,送報僮遊戲,與這篇的主題-函式,有什麼關係呢?


送報僮把報紙精準丟進郵筒,會返回加分的結果。若送報僮亂丟報紙到住家玻璃或是路人,會返回扣分結果


這就可以用函式來寫。進入主題-函式。

函式是什麼?

  • 寫好要電腦做的事,全部放在一個自訂名稱的函式內,要用的時候,再呼叫 函式。
  • 呼叫函式,就是執行函式中的內容(程式)。
  • 搭配return,遇到return,就會直接跳出函式,直接返回return的內容給呼叫方。

設計函式的語法


好,讓我們用送報僮這個遊戲,來了解函式可以如何運用。


現在,我們想計算這個遊戲的總分。Score代表總分。

  • 先設計一個名為Mailbox(郵筒信箱)的函式, 內容是加分。


在這個函式中,Mailbox就是函式的名字



  • 相同地,再設計另一個名為Miss(誤丟報紙)的函式,作為減分。


所以,現在有兩個函式,各自接收兩個參數。內容為,一個是加分,一個是減分。並且,都會接收傳過來的參數SScore,也都用return回傳計算好的總分


設計好函式後,接著宣告S為0。當作呼叫函式中傳遞的參數值

S=0

S,就是一開始遊戲的總分

在函式外,S無法被函式中的程式使用,但呼叫函式時,把S傳過去,S就可以在函式中被使用。


好喔,遊戲開始。

送報僮丟進郵筒時,我們就呼叫Mailbox()函式,如何呼叫呢?

Mailbox(),這樣就是呼叫函式。

如何傳遞參數呢?

Mailbox(S),這樣就把S傳過去給函式Mailbox。

S=Mailbox(S)是什麼?

S會接收呼叫函式的結果


假設送報僮準確丟入報紙4次到郵筒誤丟路人甲1次。

那就是呼叫4次Mailbox函式,1次Miss函式。接著,我們輸出看總分數S

S=Mailbox(S)

S=Mailbox(S)

S=Mailbox(S)

S=Mailbox(S)

S=Miss(S)

print(S)



還記得,第一篇input中提到,同一個變數,後面輸入的,會蓋過前面嗎?

所以,會得到總分3


關於更詳盡的函式用法,就加入TQC+ 程式語言Python3考照必勝專題(點此連結看介紹)


今天又學會了函式的用法,寫成一包,然後呼叫函式執行。

這樣,是不是讓整段程式碼更簡潔好使用呢?


若你覺得這篇主題很簡單,那就加入專題考證照吧!

點入TQC+ 程式語言Python3考照必勝專題(點此連結看介紹)

內有開放試閱篇


喜歡這篇文章嗎? 請按下面的愛心,代表你覺得讚。


留言
avatar-img
留言分享你的想法!
avatar-img
pc000的沙龍
32會員
103內容數
每個步驟,手把手附圖解說,附上全部程式碼,CodeJudger答題通過畫面,一定幫你考上TQC+ 程式語言Python3證照!
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News