Python 也能夠寫出通訊軟體一樣的功能嗎? Licensed by Adobe Stock
上次 Jason 讓 Meiko 很快地進入了程式的世界,Meiko 這次帶著問題來跟 Jason 討教。
Meiko:「誒,Jason 上次你教我 print()
,我回家想想,像我們常用的 Line 或是 Messenger 跟別人對話的時候,也是別人傳一個訊息過來,我看到之後,再回傳我要跟他講的話,那 Python 程式可以做到這樣嗎?」
Jason:「當然,學程式就像說話一樣,差別只是你在跟電腦說話!」
Meiko:「跟電腦說話?哪那麼簡單?我看電影裡的駭客,每個打字的速度都像機器人一樣飛快,難道寫程式不是那個樣子?」
Jason 噗呲一笑:「電影只是效果好嗎?來,讓我們再複習一下print()
這個方法。」
print ("I love programming!")
Meiko:「”I love programming”,誒,Jason 你未免也太置入行銷了,我都還不知道我會不會寫程式,你就叫我打”I love programming”。對了,你上次還用程式跟我 Say Hello 其實,我還記得!」
Jason:「呵,我怕你忘記,所以從最基本的部分再重新教你一次。不錯麻,你都看得懂英文!(OS:不小心被你看穿我置入的意圖,就是要從潛意識開始讓你喜歡上程式!)」
Jason 話鋒一轉:「寫程式就像是在跟電腦對話,這邊print()
的意思,就是叫電腦把括號裡面的字印出來。想要讓電腦印出 “I love programming”,就可以用 print("I love programming")
。」
Meiko:「Interesting,既然程式可以輸出文字,它有辦法接收資訊嗎?好歹也要像我手機,可以傳訊息、傳圖片吧?」
Jason:「誒,你先別急!有輸出當然也可以輸入啊!你看只要打下面這行!」
input("請輸入你的名字")
Meiko:「誒,所以我現在就在框框裡面輸入我的名字就好?奇怪...怎麼左邊有一個按鈕一直在轉?」
Jason:「那是 Google Colab 在等你輸入名字啊,你趕快輸入完按一下鍵盤上的『Enter』,電腦才能把你的名字 show 出來」
Meiko:「好,那我按『Enter』一下。」
Meiko :「耶!真有印出我的名字耶!可是寫程式不只這點能耐吧?」
Jason:「當然,先不要急,像剛那行程式,通常我們在程式的世界中,不會這樣寫,我們會指定一個『變數』當作代稱,這樣我們每次要用它的時候才不用再寫一大串的字,合理吧?」
Meiko:「聽起來有道理,不過,你不寫出來,我還是不知道怎麼做!」
Jason:「也是。」
yourName =input("請輸入你的名字")
print (yourName)
Meiko:「誒,真的耶,原來可以把剛剛的輸入,設定成 yourName,然後再接著用你跟我說的 print()
,把 yourName 放到 print()
的括號裡面,就可以印出『Meiko』了」
Jason:「是吧,你有沒有覺得寫程式沒那麼難啊?我這邊用 yourName 在程式裡面稱作『變數』, yourName 可以儲存妳的 input ()
,然後我再用 print(yourName)
的方式,把你剛剛輸入的名字印出來。」
Meiko:「好像是耶,不過我看最近很紅的 AI 大數據,都在說人工智慧有可能取代人類,真有這可能?」
Jason:「(這位小姐,你也未免也跳太快了吧!)據說 2045 年就會達到所謂的交界點,但也沒有人說得準拉,與其去擔心未來尚未發生的事,不如現在趕快讓自己...」
Jason 還沒聊完這個話題,Meiko 的手機突然響起...
Meiko:「喂!媽~怎麼了?」
Meiko 媽:「Meiko! 你信用卡帳單還沒繳耶...要不要幫你繳一繳?」
Meiko:「蛤~不用拉,你先放著,我回家就去繳囉!」Meiko 示意 Jason 她要先離開...
我大寶寶~拉,看完上面這段對話,你有想到print()
和input()
可以做什麼嗎?(心裏os,啊...不就印 "Hello! World!"?)
這邊給大家一個練習題,自己試試看做一個聊天機器人 Chatbot 的對話練習。聊天機器人 Chatbot 是這幾年蠻紅的題目,比如說電商的行銷,或是餐廳電話訂位都有可能用得到。想像一下這週六你要跟朋友聚餐,要訂個餐廳,你打電話到餐廳,服務人員會跟你說什麼嗎?這邊假設你叫做 Ben 好了,打電話去『IT厚」這家餐廳訂位...
服務人員:「這裡是『IT厚』餐廳,很高興為您服務!」
你:「你好,我要訂位!」
print()
和 input()
撰寫一個對話程式服務人員:「好的,先生請問怎麼稱呼?」
服務人員:「好的,請問您要訂哪一天?」
服務人員:「好的,請問是什麼時段?」
服務人員:「好的,請問幾位呢?」
服務人員:「好的,請問先生手機號碼?09」
服務人員:「好的,Ben 先生,已為您預約訂位 9 月 12 日,晚上六點半,4位大人,您的手機是 09xx-xxx-xxx,我們位置替您保留 10 分鐘,還有需要其他服務的嗎?」
你:「不用,掰掰!」
上面這段對話,我們可以把服務人員的提問,當作 print()
的內容,你的回應當作程式 input()
的內容,並且將輸入的內容存在『變數』之中,在服務人員提問結束再全部印出來,就好比服務人員最後跟你確認訂位資訊一樣!
試試看能不能自己寫一個符合這樣的情境的聊天機器人 Chatbot 吧!Let’s go!
歡迎登入留言跟我分享你的成果唷!(登入不麻煩,點一下 FB 登入就可以留言了!)
1.喜歡這樣方式學 Python 的朋友請留言『+1』
2.想要知道解答,請留言『我要解答』,大寶寶再私訊給你唷!
不好意思,我想要解答, 謝謝!
您好~請私訊我您的 E-mail,我下週寄解答給您唷!
Day2:https://colab.research.google.com/drive/1YXqMPqFojwIAgDJksEoFaOXY9Eqw2bIZ?usp=sharing
請參考唷!
不好意思,我想要解答, 謝謝!
您好~請私訊我您的 E-mail,我下週寄解答給您唷!
已寄信到你的信箱囉~請收信!