推薦Python初學者的好用工具:Google Colab
推薦Python初學者的好用工具:Google Colab
2019.03.20 | Google

編按:本文作者為大學教授,這篇文章是他有關Python學習的方法分享。

這個學期,我在北德克薩斯大學(University of North Texas)教「INFO 5731: Computational Methods for Information Systems」課程,主要內容包括: Python基礎、自然語言處理,以及機器學習。

授課的對像是資訊科學、數據科學專業的碩士與博士研究生。跟在中國一樣,我依然使用翻轉教學(flipped instruction)方式。過去的幾週,我們把「Python基礎」部分學完了。

每週,我都會要求學生在課前閱讀兩本教材上的指定章節,然後把所有的程式碼自己重複一遍。在此基礎上,對每一段程式碼,學生都要自己試著進行一些改動。出錯也沒有關係,嘗試解決。

因為絕大部分學生,都是Python初學者。因此他們都會遇到以下的實際問題:

  • 不知道如何安裝和設置運行環境;
  • 遇到問題會慌亂,不知如何有效尋找解決方法;
  • 對於團隊作業,不知該如何有效協作;
  • 不懂得如何進行版本控制,程式碼越改越亂。

這些問題,也構成了學生的痛點。

如果不能有效加以解決,學生會把每週寶貴的學習時間,浪費到許多瑣碎的無用功上。更可能的情況,是他們的信心會被打擊,導致喪失學習的動力和興趣。

因此,我為他們找到了一款合適的Python練習工具。這裡,我把這款工具也分享給你。

這款工具,就是Google Colab。我曾經在〈如何免費雲端運行Python深度學習框架?〉一文中為你介紹過它,在〈如何用Python和循環神經網絡做中文文本分類?〉和〈如何用Python和循環神經網絡預測嚴重交通擁堵?〉裡,我也曾用它給你做過程式碼的展示。

下面,我給你們介紹一下如何用Google Colab應對上述的4個痛點,為你的Python練習提供輔助。

環境

新手最常見的問題,就是好不容易累積了學習的興趣,上手不久便遇到報錯。而Python新手遇到的許多錯誤,實際上都和環境的配置有關。例如說,Anaconda套件下載環節,你就不知道該選擇哪個版本。

好不容易安裝好了,因為路徑設置問題,連Jupyter Notebook都呼叫不出來。終於能輸入程式碼了。結果一輸入就提示,你要調用的模塊名稱,沒聽說過!

而這些,Google Colab都幫你處理好了。只需要打開一個瀏覽器(推薦Google Chrome或者Firefox),輸入:https://colab.research.google.com就可以看到以下頁面。

Google Colab
圖/ 作者提供

選擇新建Python 3筆記本,然後就能看到完全配置好的Python運行環境了。

Google Colab
圖/ 作者提供

對,就是這麼簡單。你可別小看這個運行環境,雖然你沒有執行任何安裝過程,但是它基本上涵蓋了你做數據科學分析要用到的各種工具,這些工具包括但不限於Numpy、Scipy、Pandas等,甚至連深度學習的框架,例如Tensorflow、Keras和Pytorch,也是一應俱全。

Google Colab的深度學習環境支援,可不只是軟體那麼簡單。Google慷慨的提供了GPU,甚至是更專業化的TPU,供你免費使用。

預設狀態下,這些雲端硬體是不開啟的。你需要在選單欄中選擇runtime,然後選擇Change runtime type,就可以看到不同硬體支援的選項了。

Google Colag
圖/ 作者提供

有的書籍樣例程式碼,甚至是Python組件,都需要Python 2環境才能運行,這也沒關係。點擊新建筆記本,你就能使用不同的Python版本。

細心的你會發現,在上面的「修改運行時設置」頁面裡,也可以隨時調整Python版本。

求助

作為新手,你遇到錯誤和問題,是完全正常的。而Python具有強大的社群,可以提供很多幫助。

但如果你嘗試過,便可能有一種錯覺——這些Python高手很不友善。因為你貼了問題,卻沒人理你。其實,這很可能是你問問題的方式不對。想想看,你籠統地說一個報錯資訊,可能的原因或許有數十甚至上百種,誰能幫你一一排除?這倒也罷了。可是你明明貼了一段程式碼,還給出了錯誤資訊的截圖啊,為什麼還是沒有人伸出援手?因為這些資訊,可能依然不夠。

想想看,你本機安裝了什麼樣的套件?其中的各種模塊,都分別是什麼版本?你執行當前程式碼有問題,那上下文是什麼?會不會是因為之前某個程式碼段落,影響了你當前段落的執行?你的作業系統,是否完全支援你正在使用的組件功能……這些可能性,無窮無盡。同樣,也沒有人這樣花時間幫你列舉。

但是有了Google Colab,你提問的效果卻可以大大提升。因為,你可以用最簡單的方法,讓潛在的回答者復現你的問題。這就是,把你的筆記本共享出去。如下圖,點擊筆記本右上角的Share按鈕。

Google Colab
圖/ 作者提供

在出現的對話框裡,注意選擇權限。選成可以瀏覽(view),就可以了。

然後,選擇「複製鏈接」,鏈接就到了你的剪切板裡面了。把它連同你的文字描述,直接貼到Python的論壇或者課程討論區裡。別人只需要點擊,就能查看你的全部程式碼、報錯資訊。而且,還能運行你的筆記副本。注意,雖然你倆可能用的是不同的作業系統、不同的瀏覽器,但因為都用了Google Colab,你們的Python環境是完全一致的。等到對方解決了問題,他還可以把完整的筆記本再用連結方式分享給你。你的問題於是迎刃而解。

問問題,只是尋求幫助的一個方面。在提問之前,你還是應該自己嘗試一下解決的。毫不願意思考,直接當伸手黨,社區裡的人很難喜歡跟你打交道。而Google Colab為你主動尋找問題答案提供了工具支持。每當你遇到報錯的時候,你都會看到下方有個按鈕。

Google Colab
圖/ 作者提供

點擊這個按鈕, Google Colab就會用搜尋引擎,在Stackoverflow這個IT問答站點上,幫你尋找相關報錯的已有答案。

Google Colab
圖/ 作者提供

一般來說,點擊前幾條資訊,你就會有收穫。例如這次,你就很幸運,因為答案明確說明,這是因為Python版本帶來的差異。你只需要根據提示,進行程式碼的輕微調整,就能正常運行了。

協作

不知你有沒有嘗試過跟人協作編寫程式碼?我的課上,是有小組作業的。要求學生2–3人一組,一起用Python解決問題。有的人,是這樣協作的:自己寫一段程式碼,用郵件傳給對方;對方改完,發回來;自己在上面修改添加,再發回去……

這樣顯然效率很低。有沒有高效的方法?當然有。依然利用我們剛才已經見到過的共享功能。

只是這一次,在選擇權限的時候,給對方「可修改」權限。

Google Colab
圖/ 作者提供

例如還是剛才的print命令沒有加括號的問題。只不過這次,對方除了能看到你的問題,還可以直接編輯。你的協作者,新建了一個代碼塊,並且輸入了正確的資訊。

在你這裡看起來,就是這個樣子的。協作者的頭像,會顯示在對應的修改內容旁邊。這樣一目了然。

Google Colab
圖/ 作者提供

對方還可以在程式碼塊旁,選擇添加註釋。

Google Colab
圖/ 作者提供

例如輸入以下內容。

Google Colab
圖/ 作者提供

你可以同步在自己的筆記本上,看到對方的註釋。

Google Colab
圖/ 作者提供

這樣一來,團隊協作Python練習溝通的效率,自然就高了許多。

注意,為了安全起見,一定只能把該權限,限定在你信任的協作者中。

如果是打算把你的成果展示出來,你可以使用Google Colab與Github的集成功能。如下圖,選擇保存副本到Github。

Google Colab
圖/ 作者提供

然後,選擇你希望保存到的Github專案。

保存完畢後,對應的Github頁面會自動打開,供你預覽。其中可以包含全部的文字、圖片、程式碼和輸出訊息。注意筆記本的頂部,有一個「在Colab打開」的連結。

Google Colab
圖/ 作者提供

點擊它,你就能迅速開啟Google Colab環境,並且直接運行這個Github上的筆記副本。

版本

當你不停地嘗試和改動代碼的時候,很有可能會把問題改得更加糟糕。這時候,你恨不得有一個時光機,可以讓你回到錯誤少一點的時候。這個時光機,Google Colab是提供了的。

點擊選單裡面的Revision history功能,你就能看到當前筆記本已保存的全部歷史版本,包括修改時間、誰改的、文件大小等各種資訊,一應俱全,想回到哪個版本,點一下「恢復」按鈕就可以了。

另外,你也可以把Google Colab筆記本,直接下載成為ipynb文件,在本地保存副本。

一定要注意選擇需要的儲存路徑,避免不知存到哪裡去了。

Google Colab
圖/ 作者提供

我一般讓學生交作業的時候,都需要同時提交Google Colab連結,以及一個ipynb文件。二者的內容,應該是一樣的。既然如此,為什麼還需要提交兩樣東西呢?這個問題,作為思考題,留給你。請注意聯繫本節標題,加以分析。

有了ipynb文件,你可以用本地的Jupyter Notebook開啟。但是如果你只是想查看內容的話,這裡給你推薦一個更好的工具,叫做nteract。它可以幫你直接開啟ipynb文件,用於查看。這樣,你就沒必要每次都用Jupyter Notebook命令開啟後台服務,然後再到瀏覽器中點開對應的ipynb了。

小結

還記得在《如何高效學Python ?》一文中,我給你推薦過的經典教材《笨辦法學Python》吧?

《笨辦法學Python》指出了一條看似笨拙,卻非常有效的學習路徑。我上課的時候,也一直在跟學生們強調——Python這樣的實踐類技能,只能練中學(Learn by doing)。

本文給你推薦的Google Colab,可以幫你解決Python初學者練習實踐Python程式編輯時,最常遇到的幾大痛點。包括:

  • 自動配置
  • 有效求助
  • 協作程式編輯
  • 版本控制

這樣一來,你可以把寶貴的時間,聚焦在技能的掌握和應用;而不是久病成醫,成為「環境配置專家」了。

祝Python程式編輯學習愉快!

本文授權轉載自:少數派;作者:玉樹芝蘭

往下滑看下一篇文章
彰化,是活的!台灣設計展「圓未來之行」:以源創圓,看交通、建設、生活等多方面向,如何從300年中轉譯甦醒,令過去翻頁至今,創建未來!
彰化,是活的!台灣設計展「圓未來之行」:以源創圓,看交通、建設、生活等多方面向,如何從300年中轉譯甦醒,令過去翻頁至今,創建未來!

2025台灣設計展將開展!本次由彰化縣政府建設處 陳昌茂處長與策展人何來香,共同聊聊「圓未來之行」展覽與其背後的城市發展與公共建設,時代帶來了哪些蛻變與機會,彰化的未來,會是什麼模樣?陳昌茂處長談到:「先輕鬆聊聊彰化最為人知的印象吧,許多外地人提到彰化,就是控肉飯與肉圓,美食旅遊確實是大家的共同嗜好,但是否有其他的深度內容,能給大眾重新認識彰化的機會?『台灣設計展:圓未來之行』就是一個好契機。

圓未來之行,與城市一起成長:你所知道的彰化,它是什麼?

300年來的發展,彰化的農業與工業在國內甚至國際都佔有舉足輕重的角色,半工又半農的發展成了城市獨有特色,在行政區劃及地方制度的調整下,縣市間的城鄉差距造成了資源上的落差,因此,政府近年於交通、城市規劃與建設上積極推動許多計畫,此次的展覽為的就是讓民眾看見設計中與蛻變進行中的彰化,包含:彰化交流道的農業區解編、國民運動中心興建、規劃與建設八大生活圈轉運站及全國首創的長照衛福大樓等等,從交通、建設面改善實質生活,正是此次展覽核心,透過時代回顧轉譯為當代及未來發展能量,讓彰化充滿地方鮮活的發展魅力。」

策展人何來香說起,『台灣設計展:圓未來之行』以時間、轉譯、共創為展出主軸,將時間梳理成「過去─現在─未來」,包含:源(回顧記憶與成長記號)、緣(轉譯與生活)、圓(圓未來城市之貌)、合(共創未來),一如處長所說,將300年的背景梳理轉譯,在「交通、建設、生活」呈現,將其佈局為:三個室內展區X一個戶外展區,透過線上互動與實體呈現,讓彰化時代(過去─現在─未來)逐漸活起來,從低調走向鮮活光亮,「現在」,正是未來的縮影與定錨力量。

圖二.jpg
「圓未來之行」兩大重要推手:策展人何來香、彰化縣政府建設處陳昌茂處長。
圖/ 彰化縣政府

四大展區表述「三源一合」:未來可以被共創,一同設計理想的生活模樣

『台灣設計展:圓未來之行』共有四大展區,規劃為:源(記憶之源)、緣(轉譯之間)、圓(未來城市)、合(共創未來),同時串接著「時間:過去─現在─未來」的脈絡線,一覽城市的成長姿態。走進展區,開始從「過去」中逐漸甦醒,壓艙石、鐵道枕木等建材文物彷若時光倒流,將觀展者帶回記憶之源,透過佈局中的架構語言,從最微觀的建築元素開始見證曾經,呈現彰化的移居風光;來到「現在」,城市逐漸有了治理與變化,交通疏通了生活與流動,當下的建設創造了更多的「宜居」,像是:「共生共享」,表述著近年的建設成果,如:交通樞紐轉運站、伸港青年住宅、鹿江綠建築,以及老屋改造返鄉青年創業案例等,透過不同形式的交通、城市建設的延伸,以延續更多的綠化、永續、教育與建築示範及全齡照顧與幸福範例城市、共融場域等,舒展著彰化的此刻宜居。
而「未來」正在萌發的可能性,則以情境式劇場呈現城市建設藍圖,置身體驗充滿希望的願景,陪伴居民一起邁向未來。

圖三.jpg
員林市衛生所暨長照社福大樓新建工程拿下第23屆公共工程建築工程類金質獎,建築採全齡化無障礙、節能減碳設計。
圖/ 彰化縣政府

陳昌茂處長與策展人何來香提到,「未來城市」象徵著:綻放、圓滿、快捷與新鮮,展區整體風格呈現現代、乾淨、溫暖的未來感,此區域特別設計一個共創互動環節,以大尺度的城市規劃角度出發,邀請觀展者共同打造屬於彰化的未來城市,透過彰交特定區為城市共創背景,觀展者能透過平板互動,依需求、喜好選定主題類型與建築,如:該區域希望如何發展?公園綠地(共融公園、生態濕地)、產業經濟(百貨商場、研發大樓)、休閒育樂(美術館、圖書館等),民眾意見將由 AI 即時生成建築並影響城市發展指數,進而反思發展過程中經濟建設與生活環境的平衡取捨,最終會將互動成果整理成報告做為縣府施政參考,此區域的未來,將是共創而生的實驗計畫之一。而代表「合」的「戶外串聯區」,則是由在地師生以自然素材共創的「魚的肚子是我們的生活」,延伸探索永續、自然、未來想像及綠色療癒,令「圓未來之行」參與民眾跨域孩童到成人,擁抱接納多齡意見,讓想像活躍充滿新鮮生命力。

彰化的蛻變,是成長留下的獨特印記──未來,由我們共創

有趣的是,『台灣設計展:圓未來之行』本次展出地點為:彰化縣立鹿江國際中小學,它不僅是彰化首間公辦的雙語學校,也確定籌設高中部,以接軌國際的教育為目標。當展區中的時間(過去─現在─未來)與交通、建設、生活相互交融與牽連,讓每個時代的彰化,蛻變都因成長而留下獨特印記。從海洋(船運、通商)而生的彰化,在展覽中扣回海洋生態的共創溯源反思。

圖四.jpg
鹿江國際中小學新設高中部,預計117年學年度正式招生。
圖/ 彰化縣政府

陳昌茂處長認為,彰化的發展不必然要同於其他城市,當然也不會是其他城市的翻版,因為彰化有自己的專屬發展模式。期待透過此次展覽與共創,讓民眾與我們一起共同體驗最宜人與舒服的生活輪廓與幸福感受以及發掘彰化未來的無限發展可能;策展人何來香笑著分享,彰化是全球百大幸福城市的銀牌級城市,很期待各地民眾來參觀,重新感受彰化,並與群眾一同共創彰化。延續這樣的願景,彰化縣長王惠美也分享:「縣府其實一直在思考,如何擘劃下一個百年都市發展願景,讓民眾的生活變得更好,外移的人口逐漸回流。這些交通、城市建設的規劃、執行與聆聽大眾意見,都是為了一同探索未來、共同創造大家真正嚮往的生活」。

圖五.jpg
彰化縣長王惠美與縣府團隊積極規劃下一個百年都市發展願景,打造最宜居 幸福的城市。
圖/ 彰化縣政府

採訪・撰文/楊喻婷

【彰化縣政府 廣告】

登入數位時代會員

開啟專屬自己的主題內容,

每日推播重點文章

閱讀會員專屬文章

請先登入數位時代會員

看更多獨享內容

請先登入數位時代會員

開啟收藏文章功能,

請先登入數位時代會員

開啟訂閱文章分類功能,

請先登入數位時代會員

我還不是會員, 註冊去!
追蹤我們
一次搞懂Vibe Coding
© 2025 Business Next Media Corp. All Rights Reserved. 本網站內容未經允許,不得轉載。
106 台北市大安區光復南路102號9樓