摘要
最近常被問『學Python到底能幹嘛?』這篇算是我從接案到教課累積的私房筆記吧——關於怎麼用這條蟒蛇在科技圈橫著走(笑) 歸納要點:
- Python那些超好用的AI函式庫——像TensorFlow這種,我自己試過拿來玩影像辨識,原本以為要寫幾百行code,結果import幾行就搞定訓練模型,雖然跑起來偶爾會卡卡的啦
- 自然語言處理這塊真的蠻神奇,上次用GPT-3的API讓它自動生成商品文案,出來的東西大概有六七成能用,不過要注意餵給它的指令要夠具體才行
- 資料分析的話pandas確實方便,但遇到幾十萬筆資料時...嗯...建議先切小塊處理比較不會當掉,之前幫客戶分析銷售數據就吃過這個悶虧
過去這幾年,不少人在聊程式語言時,Python好像變得越來越受歡迎。也許是它的語法真的挺簡單,很容易讀懂,也有一大堆現成的函式庫可用,感覺各行各業都有人在摸索。其實Python應該不是只有在人工智慧這一塊有話題,像什麼太空、機器人、還有一些日常生活相關的技術領域,都可以偶爾見到它的身影。
仔細想想,如果你是一個資深工程師,或者剛開始接觸寫程式的小朋友,這些例子多少會讓人對Python產生點興趣。有的人說它適合所有情境,但也許只是在特定問題下特別合用吧。看到某些專案裡面,Python用得很順手,也不代表每個場景都那麼適合,只是給了大家多一種選擇。
其實現在網路上討論「十大」或「數十種」應用很常見,不過具體來說,到底有多少案例是真的能讓人驚喜?可能見仁見智,但不少領域都確實採用了Python。像AI跟機器學習這類近幾年熱度頗高的方向,好多人就直接選擇Python來開發工具和模型。不過,要說它一定是最好的選項,其實也沒那麼絕對;只是目前看起來,它在這方面受到頗多青睞。
總之,如果想深入了解Python到底能做什麼,也許可以從身邊那些意想不到的應用開始慢慢觀察。至於哪些案例真的會讓人大開眼界,那就留待大家自己去體驗吧。
仔細想想,如果你是一個資深工程師,或者剛開始接觸寫程式的小朋友,這些例子多少會讓人對Python產生點興趣。有的人說它適合所有情境,但也許只是在特定問題下特別合用吧。看到某些專案裡面,Python用得很順手,也不代表每個場景都那麼適合,只是給了大家多一種選擇。
其實現在網路上討論「十大」或「數十種」應用很常見,不過具體來說,到底有多少案例是真的能讓人驚喜?可能見仁見智,但不少領域都確實採用了Python。像AI跟機器學習這類近幾年熱度頗高的方向,好多人就直接選擇Python來開發工具和模型。不過,要說它一定是最好的選項,其實也沒那麼絕對;只是目前看起來,它在這方面受到頗多青睞。
總之,如果想深入了解Python到底能做什麼,也許可以從身邊那些意想不到的應用開始慢慢觀察。至於哪些案例真的會讓人大開眼界,那就留待大家自己去體驗吧。
原網址: https://www.pintech.com.tw/tw/column/865/python-real-life-applications
好像有很多人都知道,Python 在 AI 領域裡算是蠻常見的選擇。這背後可能跟它那些琳瑯滿目的函式庫有關吧,像 TensorFlow、PyTorch 或 scikit-learn,都有人在用。據說這些工具讓搭建比較複雜的 AI 模型變得輕鬆不少,不會像以前那樣卡在技術細節,很快就能把那些先進一點點的演算法用起來。
說到自然語言處理,Python 也佔有某種優勢。有時候看到一些報導會提到 OpenAI 的 GPT-3——嗯,那個現在還算熱門的大型語言模型——其實也是靠 Python 完成了不少核心開發。GPT-3 能做什麼?聽過有人讓它自動寫文章、回答問題,有時甚至連程式碼都能產生出來,看起來好像很厲害,不過實際效果還是要看場景和應用。
另外,也不能不提電腦視覺。有媒體曾經討論特斯拉自駕車系統,用的也是 Python 為主體去串接各種感測器數據和鏡頭畫面。當然啦,車子要怎麼決策實際上路還牽涉很多層面,但部分開發者認為 Python 這類語言確實方便於快速驗證想法。
然後資料分析就不用多說了吧?Python 的 pandas、NumPy 跟 Matplotlib 都挺常被拿來快速整理大批量資料或做圖表。不少研究工作者發現,只要數據不是誇張地大,都可以即時運算並視覺化結果,有時候比傳統方式有效率。不過嘛,用起來偶爾還是會遇到相容性或效能的小問題,就得再調整一下。
說到自然語言處理,Python 也佔有某種優勢。有時候看到一些報導會提到 OpenAI 的 GPT-3——嗯,那個現在還算熱門的大型語言模型——其實也是靠 Python 完成了不少核心開發。GPT-3 能做什麼?聽過有人讓它自動寫文章、回答問題,有時甚至連程式碼都能產生出來,看起來好像很厲害,不過實際效果還是要看場景和應用。
另外,也不能不提電腦視覺。有媒體曾經討論特斯拉自駕車系統,用的也是 Python 為主體去串接各種感測器數據和鏡頭畫面。當然啦,車子要怎麼決策實際上路還牽涉很多層面,但部分開發者認為 Python 這類語言確實方便於快速驗證想法。
然後資料分析就不用多說了吧?Python 的 pandas、NumPy 跟 Matplotlib 都挺常被拿來快速整理大批量資料或做圖表。不少研究工作者發現,只要數據不是誇張地大,都可以即時運算並視覺化結果,有時候比傳統方式有效率。不過嘛,用起來偶爾還是會遇到相容性或效能的小問題,就得再調整一下。

數據的呈現,或者說這些工具的運用,現在影響到的範圍挺廣,從金融圈一路延伸到醫療領域。舉例來講,那時候疫情剛爆發沒多久,好像滿多人就用它來分析流行病資料,甚至有人試著弄預測模型、畫那些病毒傳播圖。不少研究者透過 Python 處理大批量的資料,這種支援其實對一些政府單位或醫療機構在決策時有些幫助。不過有沒有其他語言也能做到?這個倒是沒那麼好斷定。
金融業裡頭,好像也有人會拿 Python 來做演算法交易啊、風險評估或者偵測詐騙。據說處理龐大的數據和即時運算複雜計算,對銀行或投資公司來說還挺實用。但能不能完全取代其他工具,也許還要再觀察一陣子。
然後網頁開發跟物聯網…嗯,其實 Python 彈性滿高的。像 Django、Flask 這類框架,有人利用它們去打造規模不小又能承受大量流量的網站。Instagram、Pinterest 還有 Mozilla 似乎都用過這一套,可見得遇到那種資料密集型網站時,用 Python 有時效率還可以。當然啦,不只是傳統網站才會碰到這些問題。有的人覺得還可以應用在別的地方,只是具體效果每次看情境吧。
金融業裡頭,好像也有人會拿 Python 來做演算法交易啊、風險評估或者偵測詐騙。據說處理龐大的數據和即時運算複雜計算,對銀行或投資公司來說還挺實用。但能不能完全取代其他工具,也許還要再觀察一陣子。
然後網頁開發跟物聯網…嗯,其實 Python 彈性滿高的。像 Django、Flask 這類框架,有人利用它們去打造規模不小又能承受大量流量的網站。Instagram、Pinterest 還有 Mozilla 似乎都用過這一套,可見得遇到那種資料密集型網站時,用 Python 有時效率還可以。當然啦,不只是傳統網站才會碰到這些問題。有的人覺得還可以應用在別的地方,只是具體效果每次看情境吧。
說到Python,最近在智慧裝置這一塊,好像越來越多討論了。雖然不是每個人都關注,不過坊間有些工程師認為,因為它語法簡單、各種函式庫也夠用,所以拿來寫物聯網設備還滿方便的。有時候會聽到他們提到,用Python打造的智慧家居系統,可以根據住戶的生活習慣學著自動調整環境設定。當然啦,不一定什麼都能靠它,但像溫控或是某些安全監控,大概有不少新點子裡頭都有Python的影子。
另外,遊戲開發和電腦動畫這領域,其實以前很少看到Python。不過現在情況好像慢慢變得不太一樣。例如有些人用Pygame做二維小遊戲,也有人嘗試Panda3D處理比較複雜的三維內容。有印象的是,迪士尼那款海盜線上遊戲就曾經採用Panda3D這套工具——雖然我沒親自玩過,但據說這樣大型又多人參與的線上環境,Python也能扮演一部分角色。
其實無論是處理大量數據還是協助動畫製作,只要搭配合適模組,Python在不同場景裡偶爾會顯得挺靈活。不過話說回來,它畢竟不是每個專案都最合適,有些團隊還是偏好傳統解決方案。所以啦,看起來並沒有絕對哪種選擇比較強,只能說Python目前在某些新應用中逐漸被更多人注意而已。
另外,遊戲開發和電腦動畫這領域,其實以前很少看到Python。不過現在情況好像慢慢變得不太一樣。例如有些人用Pygame做二維小遊戲,也有人嘗試Panda3D處理比較複雜的三維內容。有印象的是,迪士尼那款海盜線上遊戲就曾經採用Panda3D這套工具——雖然我沒親自玩過,但據說這樣大型又多人參與的線上環境,Python也能扮演一部分角色。
其實無論是處理大量數據還是協助動畫製作,只要搭配合適模組,Python在不同場景裡偶爾會顯得挺靈活。不過話說回來,它畢竟不是每個專案都最合適,有些團隊還是偏好傳統解決方案。所以啦,看起來並沒有絕對哪種選擇比較強,只能說Python目前在某些新應用中逐漸被更多人注意而已。

像皮克斯或盧卡斯影業那種大公司,常聽說他們會用Python把一些重複的渲染流程自動化掉,還有資產管理這類東西,好像也交給它來處理。其實原因也很簡單,Python那種寫起來不太費力、改東改西也算靈活,所以動畫人物啊、視覺特效之類的製作過程中,用它並不稀奇。
然後講到科學運算這塊,就不得不提些像是數值計算專門用的函式庫,有人可能會想到NumPy或SciPy那些——功能多得要命,對物理、化學、生物圈裡面的人來說,大概成為了某種標配。有時候你會發現,在氣候模擬這個領域裡,也常有人倚賴Python來寫模型。據說不少地球系統的複雜模擬,其實就是靠它處理資料——從衛星、氣象站撈來一大堆資訊,接著拼湊出未來氣候變化的預測。當然啦,有些推估可能也只是參考用途,準確度怎麼樣得看情境和資料來源,不見得每次都能精準描述哪一天會發生什麼大事。總之,看上去這套工具在做科學研究時還挺方便,但是不是每個人都離不開它,好像也沒那麼絕對。
然後講到科學運算這塊,就不得不提些像是數值計算專門用的函式庫,有人可能會想到NumPy或SciPy那些——功能多得要命,對物理、化學、生物圈裡面的人來說,大概成為了某種標配。有時候你會發現,在氣候模擬這個領域裡,也常有人倚賴Python來寫模型。據說不少地球系統的複雜模擬,其實就是靠它處理資料——從衛星、氣象站撈來一大堆資訊,接著拼湊出未來氣候變化的預測。當然啦,有些推估可能也只是參考用途,準確度怎麼樣得看情境和資料來源,不見得每次都能精準描述哪一天會發生什麼大事。總之,看上去這套工具在做科學研究時還挺方便,但是不是每個人都離不開它,好像也沒那麼絕對。
在粒子物理學這一塊,Python好像已經變成不少人手邊常用的工具,尤其是在CERN那個大型強子對撞機裡頭做實驗時。有人說,Python上頭有些分析套件的出現,間接幫助了科學家觀察到希格斯玻色子的蛛絲馬跡——雖然這話可能有點誇張,但那幾個工具確實讓資料處理省力許多。標準模型那些基礎粒子的研究過程裡,好像也很難繞開Python。
說起資安領域,有種說法是Python活得像瑞士刀,不管你是防守端還是偶爾動點腦筋的駭客,都會用到它。靈活度高,再加上一堆現成函式庫,寫工具、看網路封包或是自動跑腳本,都還算順手。有時候在滲透測試現場,Python應該能派上點用場吧?不過,也許要搭配別的東西一起才比較有效,只靠一套語言恐怕不太夠。
說起資安領域,有種說法是Python活得像瑞士刀,不管你是防守端還是偶爾動點腦筋的駭客,都會用到它。靈活度高,再加上一堆現成函式庫,寫工具、看網路封包或是自動跑腳本,都還算順手。有時候在滲透測試現場,Python應該能派上點用場吧?不過,也許要搭配別的東西一起才比較有效,只靠一套語言恐怕不太夠。

像Metasploit這類工具,有些部分好像是用Python寫的,被不少資訊安全人員拿來檢查系統漏洞,偶爾也會被拿去模擬攻擊,算是一種預防措施。有些組織就靠這樣的方法找出問題,然後慢慢把那些可能的破口補起來,比起什麼都沒做要安心一些。還聽說過這個技術在開發入侵偵測系統時挺常見,可以即時掃描網路流量,有機會早一步發現可疑狀況。不少人也會用Python搭配機器學習演算法,做異常偵測或威脅預測,大約是在風險點附近多了一層保護吧,不敢說一定完全無虞,但對於重要系統來說,多一道防線總是比較心安。
再講到天文或太空領域,其實Python在那邊的應用也不算罕見。像NASA那些單位,他們手頭上的資料分析、任務控制軟體,甚至連太空機器人的一些程式碼,好像都有看到Python的影子。有個印象特別深的是,那個詹姆斯韋伯太空望遠鏡傳回來的大量數據,也有一批科學家是靠Python處理分析的。不過這圈子的事情外界知道的有限,有些細節可能得再確認才行。其實聊到太空科技,很難一句話說清楚它到底有多少地方碰得到Python,只能說在某幾個場合,它確實提供了不少方便。
再講到天文或太空領域,其實Python在那邊的應用也不算罕見。像NASA那些單位,他們手頭上的資料分析、任務控制軟體,甚至連太空機器人的一些程式碼,好像都有看到Python的影子。有個印象特別深的是,那個詹姆斯韋伯太空望遠鏡傳回來的大量數據,也有一批科學家是靠Python處理分析的。不過這圈子的事情外界知道的有限,有些細節可能得再確認才行。其實聊到太空科技,很難一句話說清楚它到底有多少地方碰得到Python,只能說在某幾個場合,它確實提供了不少方便。
好像有個地方,負責操作火星上的那些探測車——像是那台叫做Curiosity的,還有後來的Perseverance。這些機器人,其實也算是某種科學設備吧,它們需要用到程式語言去控制導航或分析資料。據說Python這種語言在這裡頭派上了點用場,聽說連遠在另一顆行星都能運作,也算是給了它一點信任感,不過具體怎麼樣也難講。
然後要談生物資訊和基因領域,好像就繞不開Python這件事。以前生物、電腦、數據這幾塊其實各自為政,但現在慢慢地混在一起了——有人覺得這樣帶來一些變化,但是不是徹底改變一切,可能還要再觀察吧。反正處理龐大的數據量、跑複雜計算,Python大概挺拿手,也因此常被拿來分析遺傳訊息、做生物系統建模。不過話說回來,在DNA定序跟資料分析這邊,有些人會選擇用Python工具處理大量由新型定序技術產出的原始數據,比如找尋基因、嘗試預測蛋白質結構,有時候也想了解與遺傳疾病相關的線索。但是不是每個案子都靠得住,就看情況囉。有些細節記不太清楚,只知道大致上流程是這樣轉下去的。
然後要談生物資訊和基因領域,好像就繞不開Python這件事。以前生物、電腦、數據這幾塊其實各自為政,但現在慢慢地混在一起了——有人覺得這樣帶來一些變化,但是不是徹底改變一切,可能還要再觀察吧。反正處理龐大的數據量、跑複雜計算,Python大概挺拿手,也因此常被拿來分析遺傳訊息、做生物系統建模。不過話說回來,在DNA定序跟資料分析這邊,有些人會選擇用Python工具處理大量由新型定序技術產出的原始數據,比如找尋基因、嘗試預測蛋白質結構,有時候也想了解與遺傳疾病相關的線索。但是不是每個案子都靠得住,就看情況囉。有些細節記不太清楚,只知道大致上流程是這樣轉下去的。

個人化醫療這塊,Python有時候也會被拿來用。科學家們好像常會查一查病人的遺傳資訊,再透過某些基於Python的演算法試著預測哪種治療比較適合眼前這個人,雖然不是每次都能那麼精準,有時還得配合其他手段。不過說到自動化,Python倒是挺受歡迎的,大概因為寫法不算複雜,又有不少現成工具包。
機器人領域裡,現在工廠或倉庫裡偶爾能看到所謂「協作型機器人」,有人叫它們cobot,差不多就是那種能跟人類一起工作的半自動裝置。有些廠商選擇用Python來寫控制程式,據說好處之一是臨時要換工作流程什麼的,不必搞很久就能調整。聽一些工程師說,在家裡面搞智慧家庭的人,好像也會碰到Python蹤跡。很多智慧設備背後跑著Python腳本,把燈光、音響那些東西串起來,也許還能跟語音助理搭配,比如Alexa或Google Home之類。
其實自動化應用範圍拉得滿廣,有的人覺得它讓裝置變「聰明」了一點,但到底多有效,看情境吧。有些場合見效明顯,有些時候則沒那麼突出。總之現在市面上的智能機械、日常小家電,大致上都有機會摸到Python,只是具體怎樣發揮作用,每家公司做法可能都不太一樣。
機器人領域裡,現在工廠或倉庫裡偶爾能看到所謂「協作型機器人」,有人叫它們cobot,差不多就是那種能跟人類一起工作的半自動裝置。有些廠商選擇用Python來寫控制程式,據說好處之一是臨時要換工作流程什麼的,不必搞很久就能調整。聽一些工程師說,在家裡面搞智慧家庭的人,好像也會碰到Python蹤跡。很多智慧設備背後跑著Python腳本,把燈光、音響那些東西串起來,也許還能跟語音助理搭配,比如Alexa或Google Home之類。
其實自動化應用範圍拉得滿廣,有的人覺得它讓裝置變「聰明」了一點,但到底多有效,看情境吧。有些場合見效明顯,有些時候則沒那麼突出。總之現在市面上的智能機械、日常小家電,大致上都有機會摸到Python,只是具體怎樣發揮作用,每家公司做法可能都不太一樣。
說到Python在教育和線上學習,這工具本身好像真的很適合初學者入門。有些人說它簡單、也夠強大,不只是教小朋友寫程式用,連一些進階的學習平台也常見Python的身影。你如果有接觸過像Coursera或edX,大概就會發現,他們後端系統裡頭常常都是靠著Python在處理數據、運算,甚至打造那種讓學生即時練習寫程式的互動區域。
有些新型態的學習系統還會根據學生表現自動調整教材內容,好像是依照個人狀況去推薦下一步該怎麼學。聽說背後不少都是用Python開發AI來分析學生進度,再搭配各種演算法慢慢優化流程,也許對於提升學習體驗有一定幫助。
其實,上面提到的那些應用,大概只能算個開頭而已。有人形容,從深海探測到外太空觀測,都能找到Python參與其中。不管你是不是專業工程師,有時候手機上的App、看到一部CG動畫電影,甚至偶爾聽聞什麼基因研究又有突破,也許在這些技術背後默默運作的就是Python——只是大家未必注意得到罷了。
至於「Python Will Blow Your Mind」這句話,有些人覺得可能帶點誇張,但事實上它確實讓不少開發者和新手都看到了很多想不到的新方向。AI、教育領域、資安防護、或者航太探索…這些地方多少都可以看到它的蹤跡。有點像是,只要未來科技或科學領域再往前邁一步,很可能都少不了Python參與其中。
創意啊,解決問題啊,各種層面的創新,不論你經驗多老或剛入門,其實都有機會摸索看看。而且,如果哪天你打開某個App、或者隨便滑到一則跟最新科學突破相關的新聞,都不妨猜猜看,是不是哪裡正偷偷地跑著一段Python程式碼?這樣想起來,好像應用真的蠻多元,只是每個人關注的角度不同而已。未來嘛…誰知道呢?
有些新型態的學習系統還會根據學生表現自動調整教材內容,好像是依照個人狀況去推薦下一步該怎麼學。聽說背後不少都是用Python開發AI來分析學生進度,再搭配各種演算法慢慢優化流程,也許對於提升學習體驗有一定幫助。
其實,上面提到的那些應用,大概只能算個開頭而已。有人形容,從深海探測到外太空觀測,都能找到Python參與其中。不管你是不是專業工程師,有時候手機上的App、看到一部CG動畫電影,甚至偶爾聽聞什麼基因研究又有突破,也許在這些技術背後默默運作的就是Python——只是大家未必注意得到罷了。
至於「Python Will Blow Your Mind」這句話,有些人覺得可能帶點誇張,但事實上它確實讓不少開發者和新手都看到了很多想不到的新方向。AI、教育領域、資安防護、或者航太探索…這些地方多少都可以看到它的蹤跡。有點像是,只要未來科技或科學領域再往前邁一步,很可能都少不了Python參與其中。
創意啊,解決問題啊,各種層面的創新,不論你經驗多老或剛入門,其實都有機會摸索看看。而且,如果哪天你打開某個App、或者隨便滑到一則跟最新科學突破相關的新聞,都不妨猜猜看,是不是哪裡正偷偷地跑著一段Python程式碼?這樣想起來,好像應用真的蠻多元,只是每個人關注的角度不同而已。未來嘛…誰知道呢?
參考來源
無瑕的程式碼:敏捷軟體開發技巧守則
書名:無瑕的程式碼:敏捷軟體開發技巧守則,語言:繁體中文,ISBN:9789862017050,頁數:368,出版社:博碩,作者:Robert C. Martin,譯者:戴于晉、博碩文化,出版日期:2013/03/22 ...
來源: 博客來卢飞的檔案
Python 入門 特訓- 基礎實作到證照攻略. Python 證照攻略課程,教你Python 的程式語法與Python 證照攻略,循序漸進學習Python 開發環境的建置。同時也將教你TQC 和Python ...
來源: Hahow 好學校
相關討論