0

特定の種類のファイルのフォルダーまたはパスをスキャンして分析するプログラムがあります。

import glob  
path = raw_input("ENTER PATH TO SEARCH: ")  
list_of_file = glob.iglob('*.txt')  
for filename in list_of_file:    
      print filename`   

pathただし、このスクリプトでは、プログラムはステートメント に保存されているディレクトリのみをスキャンし、値を取得しません。

今私が書くと:

list_of_file = glob.iglob(path + '*.txt')

これも私の仕事を進めません。

したがって、スクリプトをどこに保存したかに関係なく、プログラムに入力するパスがそのパスに従い、特定のファイルの種類を検索する方法を提案してください。

4

1 に答える 1

0

英語はあなたの母国語ではないと思いますので、質問を誤解していた場合はご容赦ください。ディレクトリに入って、そのディレクトリ内のすべての「.txt」ファイルを見つけられるようにしたいと思いますか?

その場合、次のコードで十分な例を示すことができます。

"""Find all .py files is a given directory."""
import os
import glob

path = raw_input("Enter path: ")
fullglob = os.path.join(path, "*.py")
for fn in glob.iglob(fullglob):
    print os.path.split(fn)[1]

最後の行は、iglob() が正しいディレクトリを見つけられるように、入力したパスを省略しています。help() 関数を使用して、os.path.join() および os.path.split() に関するドキュメントを取得できます。

于 2012-05-09T04:57:34.863 に答える