python模擬器
❶ 模擬驗證中的工程問題記錄:python升級及vscode字體配置
在進行隨機過程的子模型學習時,理論與實踐的結合至關重要。我們以隨機擲硬幣為例,展示了理論如何通過模擬程序得到驗證。因此,我們選擇了在Jupyter中實現文檔編輯與代碼編輯的並行操作。然而,在實際操作中,我們遇到了一系列工程問題,這些經驗總結如下,旨在積累寶貴的工程知識。
首先,升級Python版本是解決工程問題的關鍵。由於系統為Ubuntu 18.04,當前使用的Python版本為3.6.9,但VSCode調試需求Python版本需高於3.6。因此,我們決定將Python版本升級至3.7。在Ubuntu系統中,通過執行`sudo apt install python3.7`完成Python 3.7的安裝。
為了確保Python 3.7環境能正常使用,我們需要安裝相應的pip版本。當前pip與Python版本的協調是保證軟體兼容性的關鍵。這里,通過訪問指定鏈接,我們成功安裝了與Python 3.7對應的pip版本,確保了後續軟體的順利安裝。
安裝好Python 3.7和pip後,我們需要在VSCode中配置Python解釋器。在這一過程中,確保了numpy等包的跨版本兼容性。通過安裝與Python 3.7匹配的numpy包,我們確保了代碼的順利運行。此外,理解了Anaconda在虛擬環境管理方面的作用,但為了簡化配置,我們選擇直接通過pip進行包管理。
最後,為了確保Python版本與解釋器之間的協調性,我們對系統環境進行了調整。通過修改軟鏈接,使得Python 3和pip 3分別指向Python 3.7和pip 3.7版本,從而確保了開發過程的流暢與高效。
在Python與Matlab的調用配置上,通過指定路徑,實現了兩者之間的順利交互。此外,我們關注到在調試過程中可能遇到的系統兼容性問題,並通過安裝Python 3.7的開發工具包(`python3.7-dev`)解決了在安裝sysv_ipc包時遇到的錯誤。
對於VSCode編輯器的字體美化問題,我們下載了Fira Code字體,並按照官方指南進行安裝。通過調整VSCode字體設置,我們提升了代碼閱讀的舒適度,使開發過程更加愉悅。
❷ 值得收藏的Python第三方庫
網路站點爬取
爬取網路站點的庫Scrapy – 一個快速高級的屏幕爬取及網頁採集框架。cola – 一個分布式爬蟲框架。Demiurge – 基於PyQuery 的爬蟲微型框架。feedparser – 通用 feed 解析器。Grab – 站點爬取框架。MechanicalSoup – 用於自動和網路站點交互的 Python 庫。portia – Scrapy 可視化爬取。pyspider – 一個強大的爬蟲系統。RoboBrowser – 一個簡單的,Python 風格的庫,用來瀏覽網站,而不需要一個獨立安裝的瀏覽器。
互動式解析器
互動式 Python 解析器。
IPython – 功能豐富的工具,非常有效的使用互動式 Python。
bpython- 界面豐富的 Python 解析器。
ptpython – 高級互動式Python解析器, 構建於python-prompt-toolkit 之上。
圖像處理
用來操作圖像的庫.
pillow – Pillow 是一個更加易用版的 PIL。
hmap – 圖像直方圖映射。
imgSeek – 一個使用視覺相似性搜索一組圖片集合的項目。
nude.py – 裸體檢測。
pyBarcode – 不藉助 PIL 庫在 Python 程序中生成條形碼。
pygram – 類似 Instagram 的圖像濾鏡。
python-qrcode – 一個純 Python 實現的二維碼生成器。
Quads – 基於四叉樹的計算機藝術。
scikit-image – 一個用於(科學)圖像處理的 Python 庫。
thumbor – 一個小型圖像服務,具有剪裁,尺寸重設和翻轉功能。
wand – MagickWand的Python 綁定。MagickWand 是 ImageMagick的 C API 。
HTTP
使用HTTP的庫。
requests – 人性化的HTTP請求庫。
grequests – requests 庫 + gevent ,用於非同步 HTTP 請求.
httplib2 – 全面的 HTTP 客戶端庫。
treq – 類似 requests 的Python API 構建於 Twisted HTTP 客戶端之上。
urllib3 – 一個具有線程安全連接池,支持文件 post,清晰友好的 HTTP 庫。
Python實現的資料庫。
pickleDB – 一個簡單,輕量級鍵值儲存資料庫。
PipelineDB – 流式 SQL 資料庫。
TinyDB – 一個微型的,面向文檔型資料庫。
ZODB – 一個 Python 原生對象資料庫。一個鍵值和對象圖資料庫。
Web 框架
全棧 web 框架。
Django – Python 界最流行的 web 框架。
awesome-django系列
Flask – 一個 Python 微型框架。
https://github.com/humiaozuzu/awesome-flask系列
Pyramid – 一個小巧,快速,接地氣的開源Python web 框架。
awesome-pyramid系列
Bottle – 一個快速小巧,輕量級的 WSGI 微型 web 框架。
CherryPy – 一個極簡的 Python web 框架,服從 HTTP/1.1 協議且具有WSGI 線程池。
TurboGears – 一個可以擴展為全棧解決方案的微型框架。
web.py – 一個 Python 的 web 框架,既簡單,又強大。
web2py – 一個全棧 web 框架和平台,專注於簡單易用。
Tornado – 一個web 框架和非同步網路庫。
HTML處理
處理 HTML和XML的庫。
BeautifulSoup – 以 Python 風格的方式來對 HTML 或 XML 進行迭代,搜索和修改。
bleach – 一個基於白名單的 HTML 清理和文本鏈接庫。
cssutils – 一個 Python 的 CSS 庫。
html5lib – 一個兼容標準的 HTML 文檔和片段解析及序列化庫。
lxml – 一個非常快速,簡單易用,功能齊全的庫,用來處理 HTML 和 XML。
MarkupSafe – 為Python 實現 XML/HTML/XHTML 標記安全字元串。
pyquery – 一個解析 HTML 的庫,類似 jQuery。
untangle – 將XML文檔轉換為Python對象,使其可以方便的訪問。
xhtml2pdf – HTML/CSS 轉 PDF 工具。
xmltodict – 像處理 JSON 一樣處理 XML。
游戲開發
超贊的游戲開發庫。
Cocos2d – cocos2d 是一個用來開發 2D 游戲, 示例和其他圖形/交互應用的框架。基於 pyglet。
Panda3D – 由迪士尼開發的 3D 游戲引擎,並由卡內基梅隴娛樂技術中心負責維護。使用C++編寫, 針對 Python 進行了完全的封裝。
Pygame – Pygame 是一組 Python 模塊,用來編寫游戲。
PyOgre – Ogre 3D 渲染引擎的 Python 綁定,可以用來開發游戲和模擬程序等任何 3D 應用。
PyOpenGL – OpenGL 的 Python 綁定及其相關 APIs。
PySDL2 – SDL2 庫的封裝,基於 ctypes。
RenPy – 一個視覺小說(visual novel)引擎。