「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > `os.walk()` を使用して、Python で深さインジケーターを含む構造化されたディレクトリ リストを作成するにはどうすればよいですか?

`os.walk()` を使用して、Python で深さインジケーターを含む構造化されたディレクトリ リストを作成するにはどうすればよいですか?

2024 年 11 月 9 日に公開
ブラウズ:236

How can I use `os.walk()` to create a structured directory listing with depth indicators in Python?

Python の os.walk() を使用して再帰的にディレクトリを移動する

より構造化されたディレクトリ リストを作成するために、開発者はコードを変更しようとしましたディレクトリを大文字のタイトルとして表示し、その下の深さとファイルを破線で示します。ただし、最初のアプローチでは不完全な結果が得られました。

この課題に対処するには、Python の os.sep 属性を利用してパス コンポーネントを正しく描写できます。改善されたソリューションは次のとおりです:

#!/usr/bin/python
import os

# traverse root directory, and list directories as dirs and files as files
for root, dirs, files in os.walk("."):
    path = root.split(os.sep)
    print((len(path) - 1) * '---', os.path.basename(root))
    for file in files:
        print(len(path) * '---', file)

この修正されたコードでは、区切り文字として os.sep を使用してパスを分割し、Windows と Unix の両方のファイル システムに対応します。パスの長さから 1 を引くことで、現在のレベルの深さを取得し、適切な数の破線を表示できます。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3