欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

python目錄樹狀圖

錢瀠龍1年前7瀏覽0評論

在Python中,我們經(jīng)常需要處理文件的目錄結(jié)構(gòu)。而將目錄結(jié)構(gòu)以一種樹狀圖的形式進行可視化,有助于我們更好地了解文件的層次結(jié)構(gòu),也能夠更加方便地對文件進行管理。Python中可以用os模塊和shutil模塊來處理目錄樹形結(jié)構(gòu)。下面介紹一種常見的生成目錄樹狀圖的方法。

import os
def get_tree(path, prefix='', is_last=False):
"""返回指定路徑的目錄樹狀圖"""
if not prefix:
# 如果是根目錄,則不需要進行前綴處理
prefix = ''
elif is_last:
prefix += '`-- '
else:
prefix += '|-- '
entries = os.scandir(path)
entries = sorted(entries, key=lambda e: e.name.lower())
mid_prefix = '|   ' if not is_last else '    '
lines = [f"{prefix}{entry.name}\n{get_tree(entry.path, prefix + mid_prefix, i == len(entries) - 1)}" for i, entry in enumerate(entries)]
return '\n'.join(lines)
if __name__ == '__main__':
tree = get_tree('.')
print(tree)

以上代碼中,我們定義了一個函數(shù)get_tree來獲取指定路徑下的目錄樹狀圖。該函數(shù)接收三個參數(shù):path為指定路徑,prefix為前綴,is_last表示當前是否為最后一個目錄。這個函數(shù)使用了os模塊中的scandir方法來掃描目錄下的所有文件和子目錄,并遞歸調(diào)用自身來處理子目錄的目錄樹狀圖。最后將所有的目錄樹狀圖合并成一個字符串,并返回給調(diào)用者。

在主程序中,我們調(diào)用這個函數(shù),并將返回結(jié)果打印出來。在執(zhí)行完這段代碼之后,我們可以看到當前目錄下的子目錄和文件以樹狀圖的形式展示出來。