Python Tutorial(十):浏览标准库(一)
10.1 操作系統接口
os模塊提供很多函數用于和操作系統的交互:
確定使用import os風格而不是from os import *。這將避免os.open()被內建的open()函數遮住,它的操作截然不同。
內建的函數dir()和help()作為交互助手對于大的模塊像os是非常有用的:
對于日常的文件和目錄管理任務,shutil模塊提供了一個更高級別的接口,使用起來很簡單:
10.2 文件通配符
glob模塊提供了一個函數可以從目錄通配符搜索獲得文件列表:
10.3 命令行參數
通常的功能腳本經常需要處理命令行參數。這些參數存儲在sys模塊的argv屬性里,是一個列表。例如,下面是從命令行運行python demo.py one two three的輸出結果:
getopt模塊處理sys.argv,使用Unix的getopt()函數的約定。更加強大和靈活的命令行處理由argparse模塊提供。
10.4 錯誤輸出重定向和程序終止
sys模塊也有屬性stdin,stdout,stderr。后一個對于發出警告和錯誤消息并使它們可見非常有用,甚至當stdout已經被重定向:
最直接的方式來終止一個腳本是使用sys.exit()。
10.5 字符串模式匹配
re模塊提供正則表達式用于高級的字符串處理。對于復雜的匹配和操作,正則表達式提供簡潔,優化的解決方案:
當只需要簡單的功能是,優先使用字符串方法,因為它們易于閱讀和調試:
10.6 數學
math模塊訪問底層的C語言庫用于浮點數學:
random模塊提供工具用于隨機數選擇:
SciPy項目有許多其它的模塊用于數字運算。
10.7 因特網訪問
有許多模塊用于訪問因特網和處理因特網協議。最簡單的兩個是urllib.request用于從URL獲取數據和smtplib用于發送郵件:
10.8 日期和時間
datetime模塊提供一些類用于以簡單和復雜的方式操作日期和時間。日期和時間的算術被支持,實現的焦點是關于為輸出格式化和操作的有效數字抽取。模塊也支持時區意識的對象:
10.9 數據壓縮
普通的數據存檔和壓縮格式直接被模塊支持的有,zlib,gzip,bz2,lzma,zipfile和tarfile:
10.10 性能測量
一些Python用戶對同樣的問題不同的解決方法的相對表現性能產生了興趣。Python提供了一個測量工具可以立即來回答這些問題。
例如,嘗試使用元組打包和解包特性而不是傳統的方法來交換參數。timeit模塊快速地演示一個謙虛性能好處:
相對于timeit的很好的粒度級別,profile和pstats模塊提供工具用于在大塊的代碼中標示時間關鍵部分。
10.11 質量控制
開發出高質量軟件的一個方法是在開發期間為每一個函數寫測試,并且在開發過程中經常運行這些測試。
doctest模塊提供一個工具用于掃描一個模塊和驗證嵌入在一個程序的文檔字符串里面的測試。測試構造簡單的就是剪切和粘貼一個典型的調用和它的結果到文檔字符串里面。這通過給用戶提供示例改進了文檔,并且它允許doctest模塊來確認代碼對于文檔來說仍然是真的:
unittest模塊并不是和doctest模塊一樣容易,但是,它允許一個更加綜合的測試集合在一個分離的文件中被維護:
10.12 包含的框架
Python有一個“框架包含”哲學。通過它的大部分包的有經驗和堅定的能力可以更好的看到這一點。例如:
- xmlrpc.client和xmlrpc.server模塊使遠程過程調用實現到一個幾乎不重要的任務中。盡管模塊名稱,沒有直接的知識或處理必須的XML。
- email包是一個庫用于管理email消息,包括MIME和其它基于RFC2822的消息文檔。不像smtplib和poplib,它們實際發送和接收消息,email包有一個完整的工具集用于構建或解碼復雜的消息結構(包括附件)和實現因特網編碼和頭協議。
- xml.dom和xml.sax包對解析這種流行的數據交互格式提供堅強的支持。同樣地,csv模塊支持以普通數據庫格式的直接讀和寫。總之,這些模塊和包極大的簡化了在Python應用和其它工具之間的數據交互。
- 國際化通過一些模塊被支持,包括gettext,locale和codecs包。
本文是對官方網站內容的翻譯,原文地址:http://docs.python.org/3/tutorial/stdlib.html
轉載于:https://www.cnblogs.com/lixinjie/archive/2013/03/04/python-stdlib-1.html
總結
以上是生活随笔為你收集整理的Python Tutorial(十):浏览标准库(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 无精症Y染色体微缺失
- 下一篇: ABAP性能实例七例