方格精選

龜蛛賽跑

閱讀時間約 5 分鐘
龜兔賽跑,第一回合兔子因為太輕敵,在半路上呼呼大睡睡過頭,輸了比賽。
雖然輸了第一回合的比賽,不過兔子並沒有灰心喪志,牠記取教訓,買了個功能齊全的運動手錶來戴,睡覺前先定好鬧鐘時間,這樣就不怕睡過頭而輸了比賽。從此龜兔賽跑,兔子照樣在半路上睡覺補充體力,但再也沒有因為睡過頭而輸了比賽。
連續大敗數場後,烏龜終於忍不住了,牠向大會抗議,認為使用科技產品,會因為貧富差距而形成不公平競爭,最後比賽賽跑會變成比賽誰比較有錢,因此要求禁止兔子使用運動手錶。大會同意了。之後兔子因為沒有鬧鐘叫牠,三不五時會睡過頭,所以龜兔賽跑互有輸贏,呈現五五波的態勢。
比賽持續舉辦,但專家們卻發現,兔子的勝率越來越高。這現象實在令人不解,因為兔子還是照常在半路上睡覺補充體力,而睡過頭的比例也沒有特別的變化,那為什麼贏的次數會越來越多?
利用人工智慧探索大數據,專家們終於解開了這個謎團。原來,現在除了統一發票之外,還有大樂透、威力彩、今彩539、39樂合彩、三星彩、四星彩、雙贏彩,甚至於還有馬上買馬上開獎的刮刮樂,所以摃龜的人幾乎無所不在。這導致了往往烏龜眼看就要越過終點線贏得比賽,卻被敲翻在地,只能四腳朝天,眼睜睜地從日落等到月兒高掛天空,看著睡飽後神清氣爽的兔子,在一片銀色月光下,精神抖擻地跨過終點線。烏龜面對這殘酷的事實,也只能乾瞪眼,徒呼奈何。
一直以來就對絢爛繽紛的fractal圖案很著迷,既然正在學Python,那何不也用來畫一畫,練習程式之餘,也可以生出一些漂亮的圖案。
在Python裡頭,有個畫圖用的module,名字挺可愛的,就是大名鼎鼎的turtle。它本來是Logo程式語言中的一部份,用來教小孩子寫程式。既然是給小孩子入門用的,所以用法非常簡單,很容易就可以上手。網路上找了幾篇文章稍微看一下,搭配官網的說明文件,寫個簡單的程式實際跑跑看。
有時候人算不如天算,越是認為簡單的事越容易出狀況,明明就是簡單沒幾行的程式,就給你出現莫名其妙讓人傻眼的詭異症狀。什麼詭異症狀呢?用一句話來描述,就是:有一沒有二。程式跑第一遍的時候,一切都正常,沒有任何問題,該出現的圖案都正常顯示。可是要再跑一遍的時候,即使程式都沒改動,卻就是卡死,一動也不動。最後不得已,只好強制把顯示圖案的畫布關掉。畫布關是關掉了,可是Python的kernel也會跟著重啟,只能乾瞪眼等重啟完再繼續。本來在想會不會是版本的問題,有些指令已經淘汰了,但是網路上很多文章並未更新,這種情況還蠻常見的。可是即使是只用官網上最新版本、最單純的一個畫線指令,它還是照常有一沒有二。這顯然不是程式的問題了。
怎麼辦咧?當然是網路上找答案啊!
是啊!網路上找答案,多麼有智慧的一句話!就像新冠疫情期間,餐飲業一片哀鴻遍野,專家都會說:要做出差異化、要有特色,這樣就能生存下去。這話有說等於沒說。誰不知道要差異化、要有特色?問題是,要怎麼做啊?或許專家在媒體上說給大家知道的,是他的免費服務的部分,至於要怎麼做的部分,那就要收費了。專家也是人,也是要過活的。
言歸正傳,要用哪些關鍵字搜尋呢?只用單純一個「turtle」來找,顯然不行。再加上「Python」,用兩個字找也不行,會有滿坑滿谷的教學文章排在前面,根本就不知道要從何看起。那到底要用什麼關鍵字搜尋呢?就是不知道問題出在哪,所以才要搜尋找答案;可是不知道問題出在哪,又怎麼會知道要用什麼關鍵字來找?這簡直就是在雞生蛋、蛋生雞、鬼打牆。
正當腦袋打結逐漸要當機的時候,不經意地,工作列按鈕中的「Spyder」映入眼簾。Spyder這個字,到底是哪一國的語言啊?英文的spider是蜘蛛的意思,Google翻譯系統偵測說Spyder是英文,也是蜘蛛的意思,難怪Spyder這個IDE的logo是一個「S」掛在蜘蛛網上。所以現在就是用蜘蛛和烏龜在畫圖就是了,烏龜曾經和兔子比賽賽跑,不知道烏龜和蜘蛛賽跑誰會贏……心思就這麼不經意地神遊太虛,也才在神遊中,看到龜兔賽跑的後續發展。
看完龜兔賽跑,一回神,飛快地敲進Spyder、turtle兩個字搜尋。嘿!果然找到了!
網路上有不少這個問題的討論,也有不少建議的解決方式。原本在程式的最後會寫turtle.done(),這也是大部分文章範例的寫法。不過那些範例並不會詳列執行環境,所以放到不同的環境中,就可能出現不同的問題。有人建議調整Spyder的設定,不過這招試過沒用,而且實在挺不喜歡這樣的解決方式,因為萬一有其他問題需要調整同一個設定項目才能解決,而這兩個調整方式卻互相衝突,那不就GG了?最後發現,最簡單的最有效,只要在turtle.done()之後再加上一行turtle.bye()就可以了。
總算,蜘蛛和烏龜可以相親相愛一起工作,不會再有心不甘情不願的情況發生了。可是,不管他們如何相親相愛,還是很想知道,究竟龜蛛賽跑誰會贏啊?
為什麼會看到廣告
avatar-img
15會員
131內容數
寫點東西自娛娛人
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
ysf的沙龍 的其他內容
「學程式,數學要很好嗎?」這問題的答案其實很簡單,就是:Yes and no。
「天啊!這程式怎麼這麼醜!」瞪著螢幕上先前寫的程式,不禁從心底冒出這樣的一句話。
或許就如官網文件中所說的,lambda function就只是syntactic sugar而已,所以也就沒特別在意,直到在設計Game of Life的輸入介面時,因為需要用到,兜兜轉轉,費了好些功夫和時間,總算對它的用途和用法有比較完整的認識。
唉!這user可真難伺候啊~~~
Game of Life的輸出結果,也就是每代演化後universe的長相,程式要怎麼寫呢?現在有個二維list,裡頭放的是一堆0和1,要怎麼樣用西洋棋盤式的方式來顯示呢?這看來勢必得用到別人寫好的module來做,才能省時、省力又漂亮。第一個想到的,當然就是matplotlib這個科學繪圖用的mo
如果「李大仁」長得像「武大郎」,而「程又青」長得像「東施」,這戲,還會有人看嗎?
「學程式,數學要很好嗎?」這問題的答案其實很簡單,就是:Yes and no。
「天啊!這程式怎麼這麼醜!」瞪著螢幕上先前寫的程式,不禁從心底冒出這樣的一句話。
或許就如官網文件中所說的,lambda function就只是syntactic sugar而已,所以也就沒特別在意,直到在設計Game of Life的輸入介面時,因為需要用到,兜兜轉轉,費了好些功夫和時間,總算對它的用途和用法有比較完整的認識。
唉!這user可真難伺候啊~~~
Game of Life的輸出結果,也就是每代演化後universe的長相,程式要怎麼寫呢?現在有個二維list,裡頭放的是一堆0和1,要怎麼樣用西洋棋盤式的方式來顯示呢?這看來勢必得用到別人寫好的module來做,才能省時、省力又漂亮。第一個想到的,當然就是matplotlib這個科學繪圖用的mo
如果「李大仁」長得像「武大郎」,而「程又青」長得像「東施」,這戲,還會有人看嗎?
你可能也想看
Google News 追蹤
Thumbnail
個人思考紀錄於2024年10月15日 【龜兔賽跑】 有一天,烏龜和兔子在聊天,不知不覺說到誰跑得比較快,於是兔子便邀約烏龜比賽跑步。 一開始,兔子大幅領先烏龜,但不久後,兔子便開始輕敵,認為即使小睡一下,烏龜仍追趕不上牠,便到路邊睡覺。
我印象最深刻的一文:兔子🐰賽跑又輸了☹️ 裡面在講說: 兔子嘲笑🤣刺蝟🦔的彎腿,所以他們決定明天一早🌄到兔子家前面的田裡賽跑。由於兔子分不清楚誰是刺蝟太太🦔誰是刺蝟🦔。比賽一開始,兔子一跑出去而刺蝟一動也不動,當兔子快到終點的時候,刺蝟太太靠著計謀站在終點說:「我贏了!🏆」兔子覺得
Thumbnail
當你想完成一項任務時,請想辦法分拆成小分段的工作,每天堅持一小步,慢慢更有效率地完成任務。
「必須更慢一點,更有耐心一點,才能更接近勝利」因為想求勝的心情大過於急著落子的想法,就這樣,為了贏,我從亂竄的火箭,變成了一隻老謀深算的烏龜。 究竟是在哪一個時間點我有了這樣子的轉變,我已經記不清了,唯一確定的是,這是一個漫長的旅程。或許不只是孩子,家長們也需要一點時間,等待毛毛蟲破繭成蝶的那一刻。
Thumbnail
看完這篇文章讓我想到龜兔賽跑的故事!因為兔子太驕傲自以為自己一定會贏,於是跑很快很快,跑到一半時發覺烏龜還沒追上來,於是放心的在樹下睡大頭覺,兔子心想等到牠睡起來烏龜一定還沒到的,當然烏龜很努力沒有放棄的走,因為烏龜的努力,他拿到了第一名。給我們的啟示是:太過驕傲反而會失敗,我們要學習烏龜的精神,努
Thumbnail
最近在網路上看到一張蝸牛賽跑的宣傳海報,到底是真的假的? 不查不知道,ㄧ查不得了啊!原來真的有 🐌蝸牛賽跑耶!!!!! 但是, 🐌蝸牛到底要怎麼比賽跑啦? 🐌冠軍蝸牛有什麼獎勵嗎? 🐌我現在養蝸牛,還來得及參賽嗎? 🐌蝸牛賽跑的起源是從哪裡來的呢? 🐌小心,不可以恐嚇
Thumbnail
在短影音盛行的年代,龜兔賽跑帶給我們的啟示依然適用嗎? 我認為是的,而且更加適用,細節後面會說到,在那之前,我想先說說我的發現。 我發現,當整個世界都在搶快,真正厲害的人, 反而都在追求「慢」或者說「不急」。
Thumbnail
個人思考紀錄於2024年10月15日 【龜兔賽跑】 有一天,烏龜和兔子在聊天,不知不覺說到誰跑得比較快,於是兔子便邀約烏龜比賽跑步。 一開始,兔子大幅領先烏龜,但不久後,兔子便開始輕敵,認為即使小睡一下,烏龜仍追趕不上牠,便到路邊睡覺。
我印象最深刻的一文:兔子🐰賽跑又輸了☹️ 裡面在講說: 兔子嘲笑🤣刺蝟🦔的彎腿,所以他們決定明天一早🌄到兔子家前面的田裡賽跑。由於兔子分不清楚誰是刺蝟太太🦔誰是刺蝟🦔。比賽一開始,兔子一跑出去而刺蝟一動也不動,當兔子快到終點的時候,刺蝟太太靠著計謀站在終點說:「我贏了!🏆」兔子覺得
Thumbnail
當你想完成一項任務時,請想辦法分拆成小分段的工作,每天堅持一小步,慢慢更有效率地完成任務。
「必須更慢一點,更有耐心一點,才能更接近勝利」因為想求勝的心情大過於急著落子的想法,就這樣,為了贏,我從亂竄的火箭,變成了一隻老謀深算的烏龜。 究竟是在哪一個時間點我有了這樣子的轉變,我已經記不清了,唯一確定的是,這是一個漫長的旅程。或許不只是孩子,家長們也需要一點時間,等待毛毛蟲破繭成蝶的那一刻。
Thumbnail
看完這篇文章讓我想到龜兔賽跑的故事!因為兔子太驕傲自以為自己一定會贏,於是跑很快很快,跑到一半時發覺烏龜還沒追上來,於是放心的在樹下睡大頭覺,兔子心想等到牠睡起來烏龜一定還沒到的,當然烏龜很努力沒有放棄的走,因為烏龜的努力,他拿到了第一名。給我們的啟示是:太過驕傲反而會失敗,我們要學習烏龜的精神,努
Thumbnail
最近在網路上看到一張蝸牛賽跑的宣傳海報,到底是真的假的? 不查不知道,ㄧ查不得了啊!原來真的有 🐌蝸牛賽跑耶!!!!! 但是, 🐌蝸牛到底要怎麼比賽跑啦? 🐌冠軍蝸牛有什麼獎勵嗎? 🐌我現在養蝸牛,還來得及參賽嗎? 🐌蝸牛賽跑的起源是從哪裡來的呢? 🐌小心,不可以恐嚇
Thumbnail
在短影音盛行的年代,龜兔賽跑帶給我們的啟示依然適用嗎? 我認為是的,而且更加適用,細節後面會說到,在那之前,我想先說說我的發現。 我發現,當整個世界都在搶快,真正厲害的人, 反而都在追求「慢」或者說「不急」。