Python本身內置的巨大標準庫提供了豐富的工具和功能,可以滿足你能想到的任何需求。很多Python學習者習慣于自己寫代碼實現一些基本功能,然后驚奇的發(fā)現很多功能已經內置了,直接就可以使用。
任何時候想要自己寫函數處理一些簡單的工作時,請停下來先看一下標準庫。至少大概瀏覽一遍標準庫,這樣,下次需要一個函數時就能知道是否可以利用標準庫中已有的函數了。
- atexit 允許注冊在程序退出時調用的函數。
- argparse 提供解析命令行參數的函數
- bisect 為可排序列表提供二分查找算法
- calendar 提供一組與日歷相關的函數。
- codecs 提供編碼解碼數據的函數。
- collections 提供一組有用的數據結構。
- copy 提供復制數據的函數
- cvs 提供用于讀寫CVS文件的函數。
- datetime 提供用于處理日期和時間的類。
- fnmatch 提供用于匹配Unix風格文件名模式的函數。
- functools 該模塊為高階函數提供支持——作用于或返回函數的函數被稱為高階函數。在該模塊看來,一切可調用的對象均可視為本模塊中所說的“函數”。
- concurrent 提供異步計算。
- glob 提供用于匹配Unix風格路徑模式的函數。
- io 提供用于處理I/O流的函數。在Python3中,它還包含StringIO,可以像處理文件已有處理字符串。
- json 提供用來讀寫JSON格式數據的函數,
- logging 提供和對Python內置的日志功能的訪問,
- mutiprocessing 可以在應用程序中運行多個子進程,而且提供API讓這些子進程看上去像線程一樣,
- operator 提供實現基本的Python運算符功能的函數, 可以使用這些函數而不是字節(jié)寫lambda表達式,
- os 提供對基本的操作系統(tǒng)函數的訪問,
- random 提供生成偽隨機數的函數。
- re 提供正則表達式功能。
- sched 提供一個無需多線程的事件調度器。
- select 提供對函數select()和pool()的訪問,用于創(chuàng)建事件循環(huán)。
- shutil 提供對高級文件處理函數的訪問。
- signal 提供用于處理POSIX信號的函數。
- tempfile 提供用于創(chuàng)建臨時文件和目錄的函數。
- threading 提供對處理高級線程功能的訪問。
- urllib 提供處理和解析URL的函數。
- uuid 可以生成全局唯一標識符(Universally Unique Identifiers, UUID)。
大多數標準庫都是用Python寫的,所以可以直接查看其模塊和函數的源碼。有疑問時只需打開代碼自己一探究竟。盡管文檔中已經包含了你想知道的一切,但總還是有機會讓你學一些有用的東西。