python用123進行堆疊 Python123

2021-10-19 03:23:51 字數 1659 閱讀 7619

計算機世界中,充斥著各種各樣的程式,如果一定要給它們找乙個共性,非bug莫屬。即便最優秀的程式設計師也不敢妄稱自己的程式中不存在bug。因此快速定位、修復bug就成了程式設計師必知必會的技能。或許你曾經聽聞過gdb的大名,python中眾多除錯工具也不遑多讓。作為一種現代化的程式語言,python計算生態提供了眾多功能強大的除錯工具,為程式設計師們的程式設計事業保駕護航。

2023年9月,秋招如火如荼,看著乙個個offer擦肩而過,當局者百感交集。因此特別推薦10款優秀的python計算生態,幫助大家快速掌握程式debug中的必知必會,為自己的程式設計技能樹打下牢固根基,助力大家斬獲心儀offer。

ipdb

ipdb是對ipython pdb的整合。ipdb匯出函式來訪問ipython偵錯程式,ipython偵錯程式具有選項卡完成、語法高亮顯示、更好的回溯、更好的自測(具有與pdb模組相同的介面)。

pdb++

pdb++是標準庫pdb模組的擴充套件,可以作為pdb的替代品使用。它與它的前驅完全相容,但是它引入了許多新特性,使除錯體驗盡可能好。需要注意的是,pdb++不是包名,合法的包名是pdbpp。

pudb

pudb是乙個面向python的全屏、基於控制台的視覺化偵錯程式。它的目標是在乙個更輕量級和鍵盤友好的包中提供現代基於gui的偵錯程式的所有細節。pudb允許你在編寫和測試**的地方除錯**。

wdbwdb是乙個功能齊全的基於客戶機-伺服器體系結構的web偵錯程式。wdb伺服器基於tornado,負責管理除錯例項和瀏覽器連線(通過websockets)。wdb客戶端允許逐步除錯、程式內python**執行、**編輯(基於codemirror)設定斷點等。由於這種體系結構,所有這些都完全相容多執行緒和多程序程式。

manhole

manhole是程序內服務,它接受unix套接字連線,並為所有執行緒提供堆疊跟蹤和互動式提示。既可以作為守護程序一直等待連線,也可以作為訊號處理程式(停止應用程式並等待連線)。

python-hunter

hunter是乙個靈活的**追蹤工具包,它不是用於測量覆蓋率,而是用於除錯、日誌記錄、檢查和其他不法的目的。它有乙個簡單的python api,乙個方便的終端api和乙個可以附加到程序的cli工具。

line_profiler

line_profiler是乙個用於逐行分析函式的模組。kernprof是乙個方便的指令碼,根據可用內容,可以執行line_profiler或者python標準庫的cprofile或profile模組。

memory_profiler

memory_profiler是乙個監控python**記憶體使用情況的模組,它能夠逐行分析python程式中記憶體消耗情況。它是乙個純python模組,依賴於psutil模組。

py-spy

py-spy是python程式的取樣分析器。它能夠視覺化python程式花費的時間,而無需重新啟動程式或以任何方式修改**。py-spy的開銷非常低,用rust編寫,目的是提高速度,並且不會執行在與所分析的python程式相同的程序中。意味著py-spy可以安全的用於生產python**。

vprof

vprof是乙個python視覺化分析器。它可以為python應用程式的多種特性提供豐富可互動視覺化的分析功能,如執行時間和記憶體使用情況。改專案正在積極的開發中,有些特性可能不會達到預期水平。

用python實現佇列,堆疊

stack 堆疊 後進先出 queue佇列 先進先出 fifo first in first out putget queue佇列 先進先出 fifo first in first out put get class queue def init self self.l def put self,i...

小記 用python進行排序

linux 中可以使用 sort 進行排序,python中也一樣,那麼怎樣實現把乙個數字的 list 從小到大排序,然後寫入檔案,然後從檔案中讀取出來檔案內容,然後反序,再追加到檔案的下一行中呢?思路如下 1 取乙個列表內容 2 對列表內容使用 sort 進行排序,並列印出結果 3 開啟乙個檔案,將...

用python進行氣泡排序

什麼是氣泡排序?氣泡排序是將是將一堆無序的元素,通過方法 函式將他們變為有序。就像是水中冒泡一樣,把其中最大 小 的乙個乙個冒出來 氣泡排序的原理 通過函式將第乙個元素與其後面的元素進行比較,選出較大 小 的乙個,然後繼續跟後面的比較,直至比較最後乙個。也就是說通過第一輪比較後列表的末尾的元素應該是...