A. 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風格的控制項