2025年2月15日 星期六

Python 內建的 標準函式庫(Standard Library)

 Python 內建的 標準函式庫(Standard Library) 是 Python 內建的模組集合,無需額外安裝即可使用。以下是 Python 3.x 內建的標準函式庫完整列表,按類別分類,避免使用時發生錯誤。


1. 基本內建函式庫

這些函式庫提供 Python 核心功能:

  • builtins:內建函式(如 print()len()open()
  • sys:與 Python 直譯器相關的功能(如 sys.argvsys.exit()
  • os:與作業系統交互(如 os.pathos.environ
  • time:時間相關函式(如 time.sleep()time.time()
  • datetime:日期與時間處理(如 datetime.datetime.now()
  • calendar:提供日期計算(如 calendar.month()
  • argparse:命令列引數解析
  • getopt:簡單命令列引數解析(類似 C 語言 getopt

2. 數學與數值計算

  • math:基本數學函式(如 math.sqrt()math.pi
  • cmath:複數數學函式(如 cmath.sqrt(-1)
  • decimal:高精度小數運算(如 decimal.Decimal()
  • fractions:分數運算(如 fractions.Fraction(1, 3)
  • random:隨機數產生(如 random.randint()random.choice()
  • statistics:統計函式(如 statistics.mean()statistics.median()
  • itertools:迭代工具(如 itertools.combinations()
  • functools:函式工具(如 functools.lru_cache()
  • operator:函式運算符(如 operator.itemgetter()

3. 檔案與目錄操作

  • os.path:處理路徑(如 os.path.join()
  • shutil:檔案操作(如 shutil.copyfile()
  • pathlib:物件導向的路徑操作(如 Path("file.txt").exists()
  • glob:搜尋檔案(如 glob.glob("*.py")
  • fnmatch:檔名匹配(如 fnmatch.fnmatch("data.txt", "*.txt")
  • tempfile:建立臨時檔案
  • filecmp:檔案比較
  • send2trash(需額外安裝):將檔案移至回收桶

4. 資料壓縮與存取

  • zlib:壓縮與解壓縮(如 zlib.compress()
  • gzip:Gzip 壓縮(如 gzip.open("file.gz")
  • bz2:Bzip2 壓縮
  • lzma:LZMA 壓縮
  • tarfile:處理 .tar 檔案
  • zipfile:處理 .zip 檔案

5. 文本與字串處理

  • re:正則表達式(如 re.search()
  • string:字串函式(如 string.ascii_letters
  • difflib:比較字串差異(如 difflib.SequenceMatcher()
  • textwrap:格式化字串(如 textwrap.wrap()
  • unicodedata:Unicode 處理
  • stringprep:字符串準備(較少使用)
  • readline:命令列補全(主要用於互動模式)

6. 資料結構與演算法

  • collections:擴展的資料結構(如 collections.Counter()
  • heapq:最小堆積(如 heapq.heappush()
  • bisect:二分搜尋(如 bisect.bisect()
  • array:高效數組(如 array.array()
  • queue:佇列(如 queue.Queue()
  • weakref:弱引用
  • types:類型操作
  • copy:物件複製(如 copy.deepcopy()

7. 並行與多執行緒

  • threading:多執行緒(如 threading.Thread()
  • multiprocessing:多處理程序(如 multiprocessing.Process()
  • concurrent.futures:高層級並行(如 ThreadPoolExecutor()
  • subprocess:執行系統指令(如 subprocess.run()
  • sched:排程任務
  • asyncio:非同步 I/O(如 asyncio.run()

8. 網路與網路協議

  • socket:網路連線(如 socket.socket()
  • ssl:SSL/TLS 加密
  • http.server:簡單 HTTP 伺服器
  • urllib:HTTP 請求(如 urllib.request.urlopen()
  • requests(需額外安裝):更簡單的 HTTP 請求
  • ftplib:FTP 連線
  • poplib:POP3 電子郵件
  • smtplib:SMTP 電子郵件
  • imaplib:IMAP 電子郵件
  • json:JSON 解析(如 json.loads()json.dumps()
  • xml.etree.ElementTree:解析 XML
  • html.parser:解析 HTML
  • cgi:CGI 程式處理
  • uuid:生成唯一 ID

9. 作業系統介面

  • platform:獲取系統資訊(如 platform.system()
  • resource:獲取資源使用情況
  • ctypes:C 語言函式庫互通
  • signal:處理系統訊號(如 signal.SIGINT
  • psutil(需額外安裝):獲取 CPU、記憶體使用情況

10. 測試與偵錯

  • unittest:單元測試(如 unittest.TestCase
  • doctest:測試 Python 內嵌說明
  • pdb:Python 除錯器(如 pdb.set_trace()
  • traceback:處理異常追蹤
  • warnings:發出警告訊息
  • timeit:測試程式效能
  • cProfile:效能分析工具

11. 安全與加密

  • hashlib:雜湊函式(如 hashlib.md5()
  • hmac:HMAC 驗證
  • secrets:安全隨機數(如 secrets.token_hex()

12. 其他實用模組

  • logging:日誌記錄(如 logging.debug()
  • configparser:讀取 .ini 設定檔
  • shlex:解析 Shell 指令
  • codecs:編碼轉換(如 codecs.open()

這些函式庫都是 Python 內建標準函式庫,可直接匯入使用,不需要額外安裝。如果你需要第三方函式庫(如 numpypandasrequests),則需要使用 pip install 來安裝。

這份清單能幫助你避免誤用非標準函式庫,確保程式碼的兼容性與可移植性! 🚀

沒有留言:

張貼留言

精選文章

手機使用VPN進入NAS、DaikinAPP時,仍能使用其他APP如銀行,連上WIFI 或行動網路

為了避免手機使用VPN進入NAS、DaikinAPP時,仍能使用其他APP如銀行,連上WIFI 或行動網路,要修改Router Policy設定?需要把家中屬於VPN的網段設備與其他區隔?要如何設定? 為了達成您的需求: ✅ 手機連上 VPN(例如連回家中 TP-Link ER...