A. python中常用的包、庫、軟體,俗稱輪子
Python是一個廣泛使用的編程語言,有著豐富的生態系統,包含眾多的包、庫和軟體,俗稱"輪子"。以下是一個概覽,展示了Python中常見的一些工具和庫,這些工具和庫覆蓋了從基本的環境管理到高級的科學計算等多個領域,旨在提高開發效率並簡化復雜任務。
在Python環境中,管理版本和虛擬環境至關重要。使用虛擬環境可以避免不同項目之間的依賴沖突,並確保項目依賴的正確性。
包和依賴管理工具是Python開發的基礎。這些工具,如pip、conda等,幫助開發者輕松安裝、更新和卸載Python包,確保項目能夠穩定運行。
打包發布工具,如setuptools、twine等,簡化了將項目轉換為可安裝包的過程,使得項目可以被其他開發者輕松使用。
互動式工具(如IPython、REPL)提供了與Python交互的便利性,幫助開發者快速測試代碼和實驗新想法。
文件操作和MIME類型描述等庫(如os、mimetypes)提供了處理文件和文件類型的基本功能,是任何Python項目的基礎。
時間、日期處理庫(如datetime)是許多應用程序中不可或缺的一部分,用於處理時間相關邏輯和日期計算。
文本處理庫(如re、nltk)提供了解析和操作普通文本的工具,對於構建文本處理應用至關重要。
對於特定文本格式(如Word、Excel、PDF、Markdown等)的解析和處理,有專門的庫如python-docx、pandas、PyPDF2、markdown等,極大地簡化了這些任務。
自然語言處理庫(如NLTK、spaCy)提供了分析和理解自然語言的工具,是構建聊天機器人、文本分類等應用的基石。
生成項目文檔的工具(如Sphinx)幫助開發者輕松創建高質量的文檔,提升代碼的可讀性和可維護性。
配置管理庫(如ConfigParser、PyYAML)提供了存儲和解析配置文件的方式,使得應用能夠根據不同的環境靈活配置。
圖片處理庫(如Pillow、OpenCV)提供了強大的圖像處理功能,適用於各種圖像操作任務。
文字識別庫(如Tesseract、PIL)提供了OCR功能,使文本可以被計算機理解,對於自動化文檔處理等應用場景非常有用。
音頻和視頻處理庫(如pyb、moviepy)提供了對音頻和視頻文件進行剪輯、轉換和處理的功能,是構建媒體應用的必備工具。
地理位置處理庫(如geopy)提供了與地理坐標相關的功能,如地址解析、坐標轉換等,對於構建地圖應用或地理位置服務非常有用。
HTTP庫(如requests、http.client)簡化了HTTP請求和響應的處理,是構建網路應用的基本組件。
資料庫相關庫(如sqlite3、MySQL-connector-python)提供了與多種資料庫交互的功能,是數據存儲和管理的基礎。
資料庫驅動(連接件)和資料庫對象關系模型映射(ORM)庫(如psycopg2、SQLAlchemy)幫助開發者更高效地操作資料庫,簡化了SQL查詢和事務處理。
全棧Web框架(如Django、Flask)提供了構建Web應用的完整工具鏈,包括路由、視圖、模板等,讓開發者能夠快速構建Web應用。
內容管理系統(CMS)庫(如pelican、mkdocs)提供了構建靜態或動態內容網站的功能,適合構建博客或知識庫。
電子商務框架和庫(如Shopify API、Stripe API)提供了構建在線商店和處理支付流程的工具,簡化了電子商務應用的開發。
RESTful API框架(如Flask-RESTful、Django REST framework)幫助開發者構建符合REST規范的API,使服務可以被其他應用調用。
授權和認證庫(如Flask-Login、Django Authentication)提供了安全的用戶認證和會話管理功能,確保應用的安全性。
模板引擎(如Jinja2、Django templates)提供了生成動態頁面的功能,簡化了網頁內容的生成和布局。
任務隊列庫(如Celery)幫助開發者處理後台任務,實現非同步處理和任務調度。
搜索工具(如Elasticsearch)提供了全文搜索和索引功能,使開發者能夠快速構建搜索能力豐富的應用。
Feed工具(如RSS feeds)幫助開發者生成和處理RSS或ATOM格式的訂閱源,使應用能夠提供新聞或內容聚合功能。
網站資源管理工具(如mini-css-extract-plugin、terser-webpack-plugin)幫助開發者優化和壓縮網站資源,提高應用性能。
緩存庫(如Redis、memcached)提供了高效的數據緩存功能,能夠提高應用響應速度和減少資料庫負載。
電子郵件庫(如smtplib、SMTP_SSL)提供了發送和解析電子郵件的功能,對於構建郵件通知或郵件服務的開發非常有用。
國際化(i18n)庫(如Babel、gettext)幫助開發者構建多語言支持的應用,確保應用能夠面向全球用戶。
URL處理庫(如urlparse、urllib)提供了解析和操作URL的功能,是構建網路應用的基礎。
HTML和XML處理庫(如BeautifulSoup、lxml)提供了解析和生成HTML和XML文檔的功能,對於構建Web應用和數據抓取非常關鍵。
Web爬蟲庫(如Scrapy、BeautifulSoup)提供了自動抓取網頁數據的功能,是數據收集和分析的重要工具。
數據驗證庫(如Pydantic、Dataclasses)幫助開發者創建有效的數據模型和驗證輸入數據,簡化了數據驗證和處理流程。
管理界面庫(如Flask-Admin、django-admin)提供了構建用戶友好的管理後台的功能,使開發者能夠方便地管理應用數據。
靜態網站生成工具(如Jekyll、Hugo)幫助開發者快速構建靜態網站,適合構建博客、個人站點等。
進程管理庫(如multiprocessing、concurrent.futures)提供了管理多進程和並行處理的功能,提高應用的並發性能。
並發和並行處理庫(如asyncio、concurrent.futures)幫助開發者實現非同步編程和並行任務執行,提高應用的響應速度。
網路編程庫(如socket、asyncio)提供了構建網路應用的基礎功能,包括網路通信、套接字編程等。
WebSocket處理庫(如websockets)提供了構建WebSocket應用的功能,使開發者能夠構建實時通信應用。
WSGI伺服器(如Gunicorn、uWSGI)提供了兼容WSGI規范的Web伺服器,簡化了Web應用的部署。
遠程調用庫(如dill、PyRPC)提供了實現遠程過程調用的功能,使得服務能夠跨網路或進程調用。
加解密圖形界面庫(如PyQt、Tkinter)提供了構建圖形用戶界面應用的基礎功能,包括窗口、控制項和事件處理等。
游戲開發庫(如Pygame)提供了構建2D游戲應用的工具,包括圖形、音效和游戲邏輯等。
日誌工具(如logging、loguru)提供了記錄應用運行時信息的功能,幫助開發者診斷和調試應用問題。
測試庫(如unittest、pytest)提供了編寫和執行測試用例的工具,確保應用的可靠性和穩定性。
代碼分析和優化工具(如pycodestyle、black)幫助開發者檢查和優化代碼質量,提高代碼可讀性和性能。
調試工具(如pdb、IPython)提供了強大的調試功能,幫助開發者在代碼中設置斷點、查看變數狀態等,加速調試過程。
科學計算和數據分析庫(如NumPy、pandas、scipy)提供了進行數值計算和數據分析的強大功能,是數據科學和工程領域的基石。
數據可視化庫(如matplotlib、seaborn、Plotly)提供了生成圖表和可視化數據的功能,幫助開發者和用戶更好地理解和解釋數據。
視覺計算庫(如OpenCV、scikit-image)提供了計算機視覺的基本功能,如圖像處理、特徵提取等,是構建視覺應用的關鍵。
機器學習庫(如TensorFlow、PyTorch、scikit-learn)提供了構建和訓練機器學習模型的工具,是人工智慧應用的核心。
MapRece框架和庫(如Apache Spark、Dask)提供了實現分布式計算任務的功能,適合處理大規模數據集。
函數式編程庫(如functools、PyMonad)提供了函數式編程的支持,簡化了代碼的可讀性和可維護性。
運維開發工具(如Ansible、Terraform)提供了自動化部署和管理基礎設施的功能,提高運維效率。
任務調度庫(如APScheler、cron)提供了實現定時任務和工作流管理的功能,確保應用按照預定時間執行任務。
使用其他語言擴展Python庫(如cffi、ctypes)提供了與其他語言集成的介面,使Python能夠使用外部庫。
高性能庫(如numba、cython)提供了加速Python代碼執行的功能,提高應用性能。
Windows工具(如pywin32)提供了在Windows操作系統中使用Python的功能,簡化了Windows開發。
網路虛擬化和SDN庫(如OpenDaylight、ONOS)提供了構建網路虛擬化和SDN服務的基礎,是網路基礎設施的關鍵。
硬體庫(如RPi.GPIO、PyUSB)提供了與硬體設備交互的功能,適合構建嵌入式應用。
兼容性工具(如2to3、Py2App)提供了Python 2到Python 3的轉換功能,幫助開發者遷移代碼。
開發者插件(如PyCharm、Visual Studio Code插件)提供了增強開發環境的功能,提升開發效率。
IDEs(如PyCharm、Jupyter Notebook)提供了集成開發環境,支持代碼編寫、調試、運行和文檔生成。
Python資源(如awesome-python、PyPI)提供了發現和使用新Python庫的平台,是開發者獲取資源的寶貴資源。
B. python組件有多少個(2023年最新解答)
導讀:今天首席CTO筆記來給各位分享關於python組件有多少個的相關內容,如果能碰巧解決你現在面臨的問題,別忘了關注本站,現在開始吧!
常用的生物信息學python庫有哪些常用的生物信息學python庫:
Tkinter
Python默認的圖形界面介面。Tkinter是一個和Tk介面的Python模塊,Tkinter庫提供了對TkAPI的介面,它屬於Tcl/Tk的GUI工具組。
PyGTK
用於pythonGUI程序開發的GTK+庫。GTK就是用來實現GIMP和Gnome的庫。
PyQt
用於python的Qt開發庫。QT就是實現了KDE環境的那個庫,由一系列的模塊組成,有qt,qtcanvas,qtgl,qtnetwork,qtsql,qttable,qtuiandqtxml,包含有300個類和超過5750個的函數和方法。PyQt還支持一個叫qtext的模塊,它包含一個QScintilla庫。該庫是Scintillar編輯器類的Qt介面。
wxPython
GUI編程框架,熟悉MFC的人會非常喜歡,簡直是同一架構(對於初學者或者對設計要求不高的用戶來說,使用BoaConstructor可以方便迅速的進行wxPython的開發)
PIL
python提供強大的圖形處理的能力,並提供廣泛的圖形文件格式支持,該庫能進行圖形格式的轉換、列印和顯示。還能進行一些圖形效果的處理,如圖形的放大、縮小和旋轉等。是Python用戶進行圖象處理的強有力工具。
Psyco
一個Python代碼加速度器,可使Python代碼的執行速度提高到與編譯語言一樣的水平。
xmpppy
Jabber伺服器採用開發的XMPP協議,GoogleTalk也是採用XMPP協議的IM系統。在Python中有一個xmpppy模塊支持該協議。也就是說,我們可以通過該模塊與Jabber伺服器通信,是不是很Cool。
PyMedia
用於多媒體操作的python模塊。它提供了豐富而簡單的介面用於多媒體處理(wav,mp3,ogg,avi,divx,dvd,cddaetc)。可在Windows和Linux平台下使用。
Pmw
Pythonmegawidgets,Python超級GUI組件集,一個在python中利用Tkinter模塊構建的高級GUI組件,每個Pmw都合並了一個或多個Tkinter組件,以實現更有用和更復雜的功能。
PyXML
用Python解析和處理XML文檔的工具包,包中的4DOM是完全相容於W3CDOM規范的。它包含以下內容:
xmlproc:一個符合規范的XML解析器。Expat:一個快速的,非驗證的XML解析器。還有其他和他同級別的還有PyHtmlPySGML。
PyGame
用於多媒體開發和游戲軟體開發的模塊。
PyOpenGL
模塊封裝了「OpenGL應用程序編程介面」,通過該模塊python程序員可在程序中集成2D和3D的圖形。
NumPy、NumArray、SAGE
NumArray是Python的一個擴展庫,主要用於處理任意維數的固定類型數組,簡單說就是一個矩陣庫。它的底層代碼使用C來編寫,所以速度的優勢很明顯。SAGE是基於NumPy和其他幾個工具所整合成的數學軟體包,目標是取代Magma,Maple,Mathematica和Matlab這類工具。
MySQLdb
用於連接MySQL資料庫。還有用於zope的ZMySQLDA模塊,通過它就可在zope中連接mysql資料庫。
Sqlite3
用於連接sqlite資料庫。
Python-ldap
提供一組面向對象的API,可方便地在python中訪問ldap目錄服務,它基於OpenLDAP2.x。
smtplib
發送電子郵件。
ftplib
定義了FTP類和一些方法,用以進行客戶端的ftp編程。如果想了解ftp協議的詳細內容,請參考RFC959。
PyOpenCL
OpenCL的Python介面,通過該模塊可以使用GPU實現並行計算。
10個Python圖像編輯工具
以下提到的這些Python工具在編輯圖像、操作圖像底層數據方面都提供了簡單直接的方法。
--ParulPandey
當今的世界充滿了數據,而圖像數據就是其中很重要的一部分。但只有經過處理和分析,提高圖像的質量,從中提取出有效地信息,才能利用到這些圖像數據。
常見的圖像處理操作包括顯示圖像,基本的圖像操作,如裁剪、翻轉、旋轉;圖像的分割、分類、特徵提取;圖像恢復;以及圖像識別等等。Python作為一種日益風靡的科學編程語言,是這些圖像處理操作的最佳選擇。同時,在Python生態當中也有很多可以免費使用的優秀的圖像處理工具。
下文將介紹10個可以用於圖像處理任務的Python庫,它們在編輯圖像、查看圖像底層數據方面都提供了簡單直接的方法。
scikit-image是一個結合NumPy數組使用的開源Python工具,它實現了可用於研究、教育、工業應用的演算法和應用程序。即使是對於剛剛接觸Python生態圈的新手來說,它也是一個在使用上足夠簡單的庫。同時它的代碼質量也很高,因為它是由一個活躍的志願者社區開發的,並且通過了同行評審(peerreview)。
scikit-image的文檔非常完善,其中包含了豐富的用例。
可以通過導入skimage使用,大部分的功能都可以在它的子模塊中找到。
圖像濾波(imagefiltering):
使用match_template()方法實現模板匹配(templatematching):
在展示頁面可以看到更多相關的例子。
NumPy提供了對數組的支持,是Python編程的一個核心庫。圖像的本質其實也是一個包含像素數據點的標准NumPy數組,因此可以通過一些基本的NumPy操作(例如切片、掩膜(mask)、花式索引(fancyindexing)等),就可以從像素級別對圖像進行編輯。通過NumPy數組存儲的圖像也可以被skimage載入並使用matplotlib顯示。
在NumPy的官方文檔中提供了完整的代碼文檔和資源列表。
使用NumPy對圖像進行掩膜(mask)操作:
像NumPy一樣,SciPy是Python的一個核心科學計算模塊,也可以用於圖像的基本操作和處理。尤其是SciPyv1.1.0中的scipy.ndimage子模塊,它提供了在n維NumPy數組上的運行的函數。SciPy目前還提供了線性和非線性濾波(linearandnon-linearfiltering)、二值形態學(binarymorphology)、B樣條插值(B-splineinterpolation)、對象測量(objectmeasurements)等方面的函數。
在官方文檔中可以查閱到scipy.ndimage的完整函數列表。
使用SciPy的高斯濾波對圖像進行模糊處理:
PIL(PythonImagingLibrary)是一個免費Python編程庫,它提供了對多種格式圖像文件的打開、編輯、保存的支持。但在2009年之後PIL就停止發布新版本了。幸運的是,還有一個PIL的積極開發的分支Pillow,它的安裝過程比PIL更加簡單,支持大部分主流的操作系統,並且還支持Python3。Pillow包含了圖像的基礎處理功能,包括像素點操作、使用內置卷積內核進行濾波、顏色空間轉換等等。
Pillow的官方文檔提供了Pillow的安裝說明自己代碼庫中每一個模塊的示例。
使用Pillow中的ImageFilter模塊實現圖像增強:
OpenCV(OpenSourceComputerVision庫)是計算機視覺領域最廣泛使用的庫之一,OpenCV-Python則是OpenCV的PythonAPI。OpenCV-Python的運行速度很快,這歸功於它使用C/C++編寫的後台代碼,同時由於它使用了Python進行封裝,因此調用和部署的難度也不大。這些優點讓OpenCV-Python成為了計算密集型計算機視覺應用程序的一個不錯的選擇。
入門之前最好先閱讀OpenCV2-Python-Guide這份文檔。
使用OpenCV-Python中的金字塔融合(PyramidBlending)將蘋果和橘子融合到一起:
SimpleCV是一個開源的計算機視覺框架。它支持包括OpenCV在內的一些高性能計算機視覺庫,同時不需要去了解位深度(bitdepth)、文件格式、色彩空間(colorspace)之類的概念,因此SimpleCV的學習曲線要比OpenCV平緩得多,正如它的口號所說,「將計算機視覺變得更簡單」。SimpleCV的優點還有:
官方文檔簡單易懂,同時也附有大量的學慣用例。
文檔包含了安裝介紹、示例以及一些Mahotas的入門教程。
Mahotas力求使用少量的代碼來實現功能。例如這個FindingWally游戲:
ITK()是一個為開發者提供普適性圖像分析功能的開源、跨平台工具套件,SimpleITK則是基於ITK構建出來的一個簡化層,旨在促進ITK在快速原型設計、教育、解釋語言中的應用。SimpleITK作為一個圖像分析工具包,它也帶有大量的組件,可以支持常規的濾波、圖像分割、圖像配准(registration)功能。盡管SimpleITK使用C++編寫,但它也支持包括Python在內的大部分編程語言。
有很多JupyterNotebooks用例可以展示SimpleITK在教育和科研領域中的應用,通過這些用例可以看到如何使用Python和R利用SimpleITK來實現互動式圖像分析。
使用Python+SimpleITK實現的CT/MR圖像配准過程:
pgmagick是使用Python封裝的GraphicsMagick庫。GraphicsMagick通常被認為是圖像處理界的瑞士軍刀,因為它強大而又高效的工具包支持對多達88種主流格式圖像文件的讀寫操作,包括DPX、GIF、JPEG、JPEG-2000、PNG、PDF、PNM、TIFF等等。
pgmagick的GitHub倉庫中有相關的安裝說明、依賴列表,以及詳細的使用指引。
圖像縮放:
邊緣提取:
Cairo是一個用於繪制矢量圖的二維圖形庫,而Pycairo是用於Cairo的一組Python綁定。矢量圖的優點在於做大小縮放的過程中不會丟失圖像的清晰度。使用Pycairo可以在Python中調用Cairo的相關命令。
Pycairo的GitHub倉庫提供了關於安裝和使用的詳細說明,以及一份簡要介紹Pycairo的入門指南。
使用Pycairo繪制線段、基本圖形、徑向漸變(radialgradients):
以上就是Python中的一些有用的圖像處理庫,無論你有沒有聽說過、有沒有使用過,都值得試用一下並了解它們。
via:
作者:ParulPandey選題:lujun9972譯者:HankChow校對:wxy
在python中一共有多少個標准庫?Python語言官方的參考手冊鍾,介紹了與Python一同發行的標准庫。
文本處理服務
string?---常見的字元串操作
re?---正則表達式操作
difflib?---計算差異的輔助工具
textwrap?---文本自動換行與填充
unicodedata?---Unicode資料庫
stringprep?---網際網路字元串預備
readline?---GNUreadline介面
rlcompleter?---GNUreadline的補全函數
二進制數據服務
struct?---將位元組串解讀為打包的二進制數據
codecs?---編解碼器注冊和相關基類
數據類型
datetime?---基本日期和時間類型
zoneinfo?---IANA時區支持
calendar?---日歷相關函數
collections?---容器數據類型
collections.abc?---容器的抽象基類
heapq?---堆隊列演算法
bisect?---數組二分查找演算法
array?---高效的數值數組
weakref?---弱引用
types?---動態類型創建和內置類型名稱
?---淺層(shallow)和深層(deep)復制操作
pprint?---數據美化輸出
reprlib?---另一種?repr()?實現
enum?---對枚舉的支持
graphlib?---操作類似圖的結構的功能
數字和數學模塊
numbers?---數字的抽象基類
math?---數學函數
cmath?---關於復數的數學函數
decimal?---十進制定點和浮點運算
fractions?---分數
random?---生成偽隨機數
statistics?---數學統計函數
函數式編程模塊
itertools?---為高效循環而創建迭代器的函數
functools?---高階函數和可調用對象上的操作
operator?---標准運算符替代函數
文件和目錄訪問
pathlib?---面向對象的文件系統路徑
os.path?---常用路徑操作
fileinput?---迭代來自多個輸入流的行
stat?---解析?stat()?結果
filecmp?---文件及目錄的比較
tempfile?---生成臨時文件和目錄
glob?---Unix風格路徑名模式擴展
fnmatch?---Unix文件名模式匹配
linecache?---隨機讀寫文本行
shutil?---高階文件操作
數據持久化
pickle?---Python對象序列化
reg?---注冊配合?pickle?模塊使用的函數
shelve?---Python對象持久化
marshal?---內部Python對象序列化
dbm?---Unix"資料庫"介面
sqlite3?---SQLite資料庫DB-API2.0介面模塊
數據壓縮和存檔
zlib?---與?gzip?兼容的壓縮
gzip?---對?gzip?格式的支持
bz2?---對?bzip2?壓縮演算法的支持
lzma?---用LZMA演算法壓縮
zipfile?---使用ZIP存檔
tarfile?---讀寫tar歸檔文件
文件格式
csv?---CSV文件讀寫
configparser?---配置文件解析器
tomllib?---ParseTOMLfiles
netrc?---netrc文件處理
plistlib?---生成與解析Apple?.plist?文件
加密服務
hashlib?---安全哈希與消息摘要
hmac?---基於密鑰的消息驗證
secrets?---生成管理密碼的安全隨機數
通用操作系統服務
os?---多種操作系統介面
io?---處理流的核心工具
time?---時間的訪問和轉換
argparse?---命令行選項、參數和子命令解析器
getopt?---C風格的命令行選項解析器
logging?---Python的日誌記錄工具
logging.config?---日誌記錄配置
logging.handlers?---日誌處理程序
getpass?---攜帶型密碼輸入工具
curses?---終端字元單元顯示的處理
curses.textpad?---用於curses程序的文本輸入控制項
curses.ascii?---用於ASCII字元的工具
curses.panel?---curses的面板棧擴展
platform?---獲取底層平台的標識數據
errno?---標准errno系統符號
ctypes?---Python的外部函數庫
並發執行
threading?---基於線程的並行
multiprocessing?---基於進程的並行
multiprocessing.shared_memory?---
concurrent?包
concurrent.futures?---啟動並行任務
subprocess?---子進程管理
sched?---事件調度器
queue?---一個同步的隊列類
contextvars?---上下文變數
_thread?---底層多線程API
網路和進程間通信
asyncio?---非同步I/O
socket?---底層網路介面
ssl?---套接字對象的TLS/SSL包裝器
select?---等待I/O完成
selectors?---高級I/O復用庫
signal?---設置非同步事件處理程序
mmap?---內存映射文件支持
互聯網數據處理
email?---電子郵件與MIME處理包
json?---JSON編碼和解碼器
mailbox?---操作多種格式的郵箱
mimetypes?---映射文件名到MIME類型
base64?---Base16,Base32,Base64,Base85數據編碼
binascii?---二進制和ASCII碼互轉
quopri?---編碼與解碼經過MIME轉碼的可列印數據
結構化標記處理工具
html?---超文本標記語言支持
html.parser?---簡單的HTML和XHTML解析器
html.entities?---HTML一般實體的定義
XML處理模塊
xml.etree.ElementTree?---ElementTreeXMLAPI
xml.dom?---文檔對象模型API
xml.dom.minidom?---最小化的DOM實現
xml.dom.pulldom?---支持構建部分DOM樹
xml.sax?---支持SAX2解析器
xml.sax.handler?---SAX處理句柄的基類
xml.sax.saxutils?---SAX工具集
xml.sax.xmlreader?---用於XML解析器的介面
xml.parsers.expat?---使用Expat的快速XML解析
互聯網協議和支持
webbrowser?---方便的Web瀏覽器控制工具
wsgiref?---WSGI工具和參考實現
urllib?---URL處理模塊
urllib.request?---用於打開URL的可擴展庫
urllib.response?---urllib使用的Response類
urllib.parse?用於解析URL
urllib.error?---urllib.request引發的異常類
urllib.robotparser?---robots.txt語法分析程序
http?---HTTP模塊
http.client?---HTTP協議客戶端
ftplib?---FTP協議客戶端
poplib?---POP3協議客戶端
imaplib?---IMAP4協議客戶端
smtplib?---SMTP協議客戶端
uuid?---?RFC4122?定義的UUID對象
socketserver?---用於網路伺服器的框架
http.server?---HTTP伺服器
http.cookies?---HTTP狀態管理
http.cookiejar?——HTTP客戶端的Cookie處理
xmlrpc?---XMLRPC服務端與客戶端模塊
xmlrpc.client?---XML-RPC客戶端訪問
xmlrpc.server?---基本XML-RPC伺服器
ipaddress?---IPv4/IPv6操作庫
多媒體服務
wave?---讀寫WAV格式文件
colorsys?---顏色系統間的轉換
國際化
gettext?---多語種國際化服務
locale?---國際化服務
程序框架
turtle?---海龜繪圖
cmd?---支持面向行的命令解釋器
shlex?——簡單的詞法分析
Tk圖形用戶界面(GUI)
tkinter?——Tcl/Tk的Python介面
tkinter.colorchooser?---顏色選擇對話框
tkinter.font?---Tkinter字體封裝
Tkinter對話框
tkinter.messagebox?---Tkinter消息提示
tkinter.scrolledtext?---滾動文字控制項
tkinter.dnd?---拖放操作支持
tkinter.ttk?---Tk風格的控制項
C. Python 幾個重要的內置函數
在學習Python的過程中,有幾個比較重要的內置函數:help()函數、dir()函數、input()與raw_input()函數、print()函數、type()函數。
第一、help()函數
Help()函數的參數分為兩種:如果傳一個字元串做參數的話,它會自動搜索以這個字元串命名的模塊、方法等;如果傳入的是一個對象,就會顯示這個對象的類型的幫助。比如輸入help(『print』),它就會尋找以『print』為名的模塊、類等,找不到就會看到提示信息;而print在Python里是一個保留字,和pass、return同等,而非對象,所以help(print)也會報錯。
第二、dir()函數
dir()函數返回任意對象的屬性和方法列表,包含模塊對象、函數對象、字元串對象、列表對象、字典對象等。盡管查找和導入模塊相對容易,但是記住每個模塊包含什麼卻不是這么簡單,您並不希望總是必須查看源代碼來找出答案。Python提供了一種方法,可以使用內置的dir()函數來檢查模塊的內容,當你為dir()提供一個模塊名的時候,它返回模塊定義的屬性列表。dir()函數適用於所有對象的類型,包含字元串、整數、列表、元組、字典、函數、定製類、類實例和類方法。
第三、input與raw_input函數
都是用於讀取用戶輸入的,不同的是input()函數期望用戶輸入的是一個有效的表達式,而raw_input()函數是將用戶的輸入包裝成一個字元串。
第四、Print()函數
Print在Python3版本之間是作為Python語句使用的,在Python3里print是作為函數使用的。
第五、type()函數
Type()函數返回任意對象的數據類型。在types模塊中列出了可能的數據類型,這對於處理多種數據類型的函數非常有用,它通過返回類型對象來做到這一點,可以將這個類型對象與types模塊中定義類型相比較。