python遍历目录树_在Python中遍历目录树的速度要快得多?
假設給定目錄樹的大小是合理的:比如Twisted或Python這樣的開源項目,遍歷和迭代該目錄中所有文件/目錄的絕對路徑的最快方式是什么?
我想在Python中完成這項工作。os.path.walk很慢。所以我嘗試了ls-lR和tree-fi。對于包含約8337個文件(包括tmp、pyc、test、.svn文件)的項目:$ time tree -fi > /dev/null
real 0m0.170s
user 0m0.044s
sys 0m0.123s
$ time ls -lR > /dev/null
real 0m0.292s
user 0m0.138s
sys 0m0.152s
$ time find . > /dev/null
real 0m0.074s
user 0m0.017s
sys 0m0.056s
$
tree似乎比ls -lR快(盡管ls -R比tree快,但它沒有給出完整的路徑)。find是最快的。
有人能想出一個更快和/或更好的方法嗎?在Windows上,如果需要,我可以簡單地發送一個32位二進制樹.exe或ls.exe。
更新1:添加了find
更新2:為什么要這樣做。。。我正在努力做一個聰明的cd、pushd等的替代品。。以及其他依賴于傳遞路徑(less、more、cat、vim、tail)的命令的包裝器命令。該程序偶爾會使用文件遍歷來實現這一點(例如:鍵入“cdsrgraipatlxml”將自動轉換為“cd src/pypm/grail/patches/lxml”)。如果換成這張cd花了,比如說,半秒鐘的時間,我不會滿意的。見http://github.com/srid/pf
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的python遍历目录树_在Python中遍历目录树的速度要快得多?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: centos 下载 哪个版本_生信分析平
- 下一篇: linux 分区_Linux文件系统、逻