階層のあるディレクトリを走査する
ponsuke
ponsuke
ATOMRSS
  • ソースコードID: 524
  • 登録日時: 2008/06/09 02:22
  • 最終更新日時: 2008/06/09 16:35
  • アクセス数: 1186
  • タグ:  python
  • codeなにがしブックマークに追加する 0 users
  • このページを del.icio.us に追加
  • このページをはてなブックマークに追加
  • GoodJob
  • 7

GJGJGJGJGJGJGJ

説明

 あるディレクトリ内にあるすべてのディレクトリとファイルを表示する。

ディレクトリが階層構造になっている場合は、ディレクトリが存在しなく
なるまで、上記処理を行う。

 上記の問題を解く場合、「ディレクトリ内を走査する」という処理を再帰的に行う必要がある。

解法が分かれば、それほど難しくないが、再帰処理を書くのは、
それなりに面倒くさい。

Pythonには、os.walkという関数が用意されており、上記処理を容易に行う事が
できる。

os.walkは、引数としてディレクトリを渡すと、ディレクトリ内を走査して、
現在のディレクトリ、ディレクトリ内にあるディレクトリ、ディレクトリ内にある
ファイルを返す。


下記に示すプログラムは、os.walkを用いて、ディレクトリ走査を行い、
階層構造をタブで表現したものだ。


結果は次のような形となる。

 /
    __init__.py
    __init__.pyc
    manage.py
    manage.py~
    settings.py
    settings.pyc
    test2.py
    test2.py~
    test3.py
    test3.py~
    test4.py
    test4.py~
    urls.py
    urls.pyc
    bookmark /
        __init__.py
        models.py
        models.py~
        views.py
        hoge /
            d
    hoge /
    uuu /

(文、固め。いかがか?)

ソースコード

コメント

  • ゲスト
  • 1:ゲスト (暇人)
  • 2008/06/09 16:35

Perl の場合、
File::Find モジュールを使います。

GJGJGJGJGJGJ

前へ 1 次へ

プレゼン公開・共有サイト handsOut.jp チーム・マイナス6% - みんなで止めよう温暖化

ソースコードのブログパーツ

デフォルトのフォントサイズ
修飾
表示サイズ
px px
プレビュー (表示する)
下のプレビュー領域をクリックすると、ポップアップで全体を見ることができます。
パラメータが不正です

    GoodJobしたユーザ

    • 台北猫々
    • ikdk
    • l-w-i

    ブックマークコメント

    関連するなにがし

    前へ 1 2 次へ

    タグ

    raketime machineイベントログfilesystemobjectdeveloperprogrammingprimenumberflexriatagged電卓分数逆ポーランド記法ポーランド記法jaxbdyndnsarraylistdeepcopyディープコピーobjectoutputstreambytearrayoutputstreamobjectinputstreambytearrayinputstreamiterator複数チェックボックスmultibytexencentos文字エンコーディングinit_connectcharacter-set-servercollation-serverdefault-character-setヘルパーメソッド動的メソッド呼び出しf:labelwsse2重登録防止prototype.js位置positionedoffsetscrolltoスクロールpositionlink_tocyclecheck_box_tagチュートリアルactive_formerror_messages_forハイライトバリデーションvalidate便利リストデコレーションメールデコメ非対応機種tilestext_field_tag一括複数情報etherealrtphexテキストデータ抽出validwhenリセット一括更新plop置換replacepcoslogmixisregソケットnet::telnetfopenmutexサンプルcalendar[linux][bash][シェルスクリプト][大容量]mobilerorrails2.1クリップボードclipboard横向きピラミッドs2jdbc-genjsonicお絵かきフルパス名抽出サブドメインサブドメイン名s2jdbc自動生成エンティティxhtml

    前へ 1 2 3 ... 8 次へ