Python-network-programming-python-directory-listing

提供:Dev Guides
移動先:案内検索

Python-ディレクトリリスト

Pythonを使用して、ディレクトリからコンテンツのリストを取得できます。 pythonが実行されているのと同じマシンにあるディレクトリの内容をリストするプログラムを作成できます。 リモートシステムにログインし、リモートディレクトリのコンテンツを一覧表示することもできます。

ローカルディレクトリの一覧表示

以下の例では、listdir()メソッドを使用して現在のディレクトリのコンテンツを取得します。 ファイルやディレクトリなどのコンテンツのタイプも示すために、コンテンツの性質を評価するために、より多くの関数を使用します。

for  name in os.listdir('.'):
    if os.path.isfile(name): print 'file: ', name
    elif os.path.isdir(name): print 'dir: ', name
    elif os.path.islink(name): print 'link: ', name
    else: print 'unknown', name

上記のプログラムを実行すると、次の出力が得られます-

file: abcl
dir: allbooks
link: ulink

上記の内容は、pythonプログラムが実行されたシステムに固有のものであることに注意してください。 結果は、システムとその内容によって異なります。

リモートディレクトリの一覧表示

ftpを使用してリモートシステムにアクセスすることにより、リモートディレクトリのコンテンツを一覧表示できます。 接続が確立されると、ローカルディレクトリのリストと同様の方法でディレクトリの内容をリストするコマンドを使用できます。

from ftplib import FTP
def main():
    ftp = FTP('ftp.ibiblio.org')
    ftp.login()
    ftp.cwd('pub/academic/biology/') # change to some other subject
    entries = ftp.nlst()
    ftp.quit()

    print(len(entries), "entries:")
    for entry in sorted(entries):
        print(entry)

if __name__ == '__main__':
    main()

上記のプログラムを実行すると、次の出力が得られます-

(6, 'entries:')
INDEX
README
acedb
dna-mutations
ecology+evolution
molbio