我有一个程序,它扫描给定类型文件的文件夹或路径,然后分析它们。
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')
这也不能让我的工作继续下去。
所以请建议一种方式,无论我在哪里保存脚本,我进入程序的任何路径都遵循该路径并搜索特定的文件类型。
答案 0 :(得分: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()的文档。