Python でディレクトリ構造を一覧表示するには?

Mary-Kate Olsen
リリース: 2024-11-04 02:00:02
オリジナル
988 人が閲覧しました

How to List Directory Structures in Python?

Python でのディレクトリ構造のリスト

指定されたディレクトリ内のファイルとディレクトリの包括的なリストを取得することは、Python プログラミングの一般的な要件です。これを効果的に実行する方法は次のとおりです。

階層ファイルとディレクトリのリストの取得

os.walk() 関数は、ディレクトリ ツリーを走査し、その内容の階層リスト。開始ディレクトリを入力として受け取り、ディレクトリ構造内のレベルごとに 3 つのタプルを生成します。

  • dirname: 処理中の現在のディレクトリへの絶対パス。
  • dirnames: リスト現在のディレクトリ内のサブディレクトリのリスト。
  • filenames: 現在のディレクトリ内のファイル名のリスト。

実装例

<code class="python">import os

for dirname, dirnames, filenames in os.walk('.'):
    # Print path to subdirectories first.
    for subdirname in dirnames:
        print(os.path.join(dirname, subdirname))

    # Print path to filenames.
    for filename in filenames:
        print(os.path.join(dirname, filename))

    # Optional: Modify 'dirnames' to skip subdirectories.
    if '.git' in dirnames:
        dirnames.remove('.git')</code>
ログイン後にコピー

このコードは、現在の作業ディレクトリ (「.」で表される) を走査し、ディレクトリ ツリー内のすべてのサブディレクトリとファイル名へのフル パスを出力します。デフォルトでは、すべてのサブディレクトリを再帰的に実行します。ただし、ループ内でディレクトリ名リストを変更して、どのサブディレクトリを探索するかを制御できます。

高度な使用法

  • ディレクトリの除外: ディレクトリ名リストは変更できます。トラバーサル パスからディレクトリを削除します。たとえば、.git ディレクトリを除外するには、上の例に示すようにディレクトリ名からディレクトリを削除します。
  • シンボリック リンクのトラバース: デフォルトでは、os.walk() はシンボリック リンクに従います。これを回避するには、followlinks パラメータを False に設定します。
  • ファイル情報の保存: ファイル名とディレクトリ名のタプルを使用して、ファイル サイズや変更時刻などの追加のファイル情報を抽出できます。

以上がPython でディレクトリ構造を一覧表示するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート