Python 程式設計 - 初階

Python 模組/套件推薦 - itertools & more-itertools

Python 其實內建許多好用的模組,如果運用得當,不僅節省開發時間,還能讓程式碼看起來更加簡潔。

itertools 就屬於內建好用的模組之一,該模組提供不少讓我們能夠方便地處理 iterable (例如 dict, list, tuple, str 等類型的資料),譬如環型走訪、分類群組(group by)、乘積(product)等等。

如果 itertools 內建的函式還不夠的話,還可以安裝 more-itertools 。 more-itertools 提供更多額外的函式可供利用。

本篇將介紹幾種 itertools/more-itertools 中簡單易用的函式,提供除了自己動手實作之外的方法,不僅能夠節省重複開發輪子的時間,也能夠讓程式看起來更加優雅、簡潔。

Posted on  Aug 9, 2020  in  Python 程式設計 - 初階 , Python 模組/套件推薦  by  Amo Chen  ‐ 4 min read

用範例輕鬆學 Python multiprocessing 模組

Python 內建的 multiprocessing 是相當重要的模組,如果有平行(parallelism)處理的需求,除了內建的 threading 模組之外,另一個就屬 multiprocessing 。

使用 multiprocessing 的好處在於能夠很大程度避開 Python GIL 對於程式效能的影響,但壞處則是對於記憶體的耗用程度也較高,即便如此也是一個必須了解的模組。

本篇將實際透過幾個範例學習如何使用 multiprocessing 模組。

Last updated on  Aug 8, 2023  in  Python 程式設計 - 初階  by  Amo Chen  ‐ 5 min read

Python 版本管理的好工具 - pyenv

Python 近 10 年來一直在演進,因此 Python 專案的開發也需要考慮版本的問題。

特別是 Python 2 已經退休了,而現在的 Python 專案都以 Python 3 為主,然而有些公司內部的老舊專案仍以 Python 2 開發,因此開發者必須在 Python 2 與 3 之間進行切換。

如果你有 Python 版本切換上的困擾,那麼 pyenv 會是你的好朋友!

Last updated on  Mar 13, 2023  in  Python 程式設計 - 初階 , Python 模組/套件推薦  by  Amo Chen  ‐ 2 min read

Python - 讓長字串排版變好看

Python 是注重排版的程式語言,如果排版排得不好,閱讀的時候就會無來由的感到痛苦。

其中長字串的排版也是有些學問的,可以善用幾個小秘訣讓排版變好看,拯救壞心情!

Posted on  Aug 2, 2018  in  Python 程式設計 - 初階  by  Amo Chen  ‐ 1 min read

Python - 善用 maketrans, translate 轉換全型數字

進行資料處理時,時常會需要針對一些特殊字元進行轉換,維持資料的一致性。例如,日本人很常輸入全型數字(FULLWIDTH DIGIT),就需要轉為半型數字比較恰當。

但此時用 replace 瘋狂取代就不適合了,可以考慮看看內建的 maketranstranslate 幫忙轉換的工作。

Posted on  Mar 16, 2018  in  Python 程式設計 - 初階  by  Amo Chen  ‐ 1 min read