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 回答