python實(shí)現(xiàn)tree命令的使用示例
把所有的文檔都傳到了git上,但是內(nèi)容過(guò)多找起來(lái)不方便,突發(fā)奇想如果能在readme中,遞歸列出所有文件同時(shí)添加上對(duì)應(yīng)的地址,這樣只需要搜索到對(duì)應(yīng)的文件點(diǎn)擊就能跳轉(zhuǎn)過(guò)去了…列出文件總得有個(gè)顯示格式,所以就按照tree的來(lái)了…
用python實(shí)現(xiàn)命令tree的效果
首先,這是tree的效果

用到的符號(hào)實(shí)際只有三個(gè) ├─ │ └─.
我本以為會(huì)挺難的,因?yàn)榘俣攘税胩旄鞣N都有,但是沒(méi)找到一個(gè)做出tree這個(gè)效果的
最后因?yàn)槭切率?所以代碼寫(xiě)的可能有很多不足.
#!/usr/bin/env python
# -*-coding:utf-8-*-
'''
describe:
'''
import os
# 黑名單 不想列出的目錄
blacklist = [".git",".idea"]
# 指定列出那個(gè)目錄下的所有內(nèi)容
rpath = "D:\\document"
def DirAndFile(path,symbol = ""):
# 列出所有目錄和文件 同時(shí)統(tǒng)計(jì)數(shù)量用于判斷
fileList = os.listdir(path)
totleNum = len(fileList)
num = 1
for i in fileList:
# 如果是黑名單目錄 那么直接跳過(guò)
if i in blacklist:
num = num + 1
continue
# 路徑合并 遞歸調(diào)用時(shí)繼續(xù)向下傳遞
tmpPath = os.path.join(path,i)
if os.path.isfile(tmpPath):
# 判斷是否為最后一個(gè)
if num == totleNum:
print(symbol + " └─ ",i)
else:
print(symbol + " ├─ ",i)
else:
# 判斷目錄是否為最后一個(gè) 如果是則使用不同的符號(hào)
if num == totleNum:
print(symbol + " └─ ",i)
DirAndFile(tmpPath, symbol + " ")
else:
print(symbol + " ├─ ", i)
DirAndFile(tmpPath,symbol + " │ ")
num = num + 1
if __name__ == '__main__':
print(rpath)
DirAndFile(rpath)最后,放一個(gè)效果圖

到此這篇關(guān)于python實(shí)現(xiàn)tree命令的使用示例的文章就介紹到這了,更多相關(guān)python tree命令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python虛擬機(jī)pyc文件結(jié)構(gòu)的深入理解
這篇文章主要為大家介紹了python虛擬機(jī)之pyc文件結(jié)構(gòu)的深入探究理解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03
Python實(shí)現(xiàn)拷貝多個(gè)文件到同一目錄的方法
這篇文章主要介紹了Python實(shí)現(xiàn)拷貝多個(gè)文件到同一目錄的方法,涉及Python針對(duì)文件與目錄的遍歷、復(fù)制等相關(guān)操作技巧,需要的朋友可以參考下2016-09-09
親手教你用Python打造一款摸魚(yú)倒計(jì)時(shí)界面
前段時(shí)間在微博看到一段摸魚(yú)人的倒計(jì)時(shí)模板,感覺(jué)很有意思,于是我用了一個(gè)小時(shí)的時(shí)間寫(xiě)一個(gè)頁(yè)面出來(lái),下面小編把實(shí)現(xiàn)過(guò)程分享給大家,對(duì)Python摸魚(yú)倒計(jì)時(shí)界面感興趣的朋友一起看看吧2021-12-12
Python如何根據(jù)頁(yè)碼處理PDF文件的內(nèi)容
在Python中,fitz庫(kù)可以用于多種任務(wù),如打開(kāi)PDF文件、遍歷頁(yè)面、添加注釋、提取文本、旋轉(zhuǎn)頁(yè)面等,此外,它還可以用于在PDF頁(yè)面上添加高亮注釋、提取圖像等操作,這篇文章主要介紹了Python根據(jù)頁(yè)碼處理PDF文件的內(nèi)容,需要的朋友可以參考下2024-06-06
在服務(wù)器端實(shí)現(xiàn)無(wú)間斷部署Python應(yīng)用的教程
這篇文章主要介紹了在服務(wù)器端實(shí)現(xiàn)無(wú)間斷部署Python應(yīng)用的教程,方法主要是Gunicorn進(jìn)行重載,需要的朋友可以參考下2015-04-04
Python實(shí)現(xiàn)PIL圖像處理庫(kù)繪制國(guó)際象棋棋盤(pán)
本文主要介紹了Python實(shí)現(xiàn)PIL圖像處理庫(kù)繪制國(guó)際象棋棋盤(pán),文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-07-07

