2014-11-02 160 views
0

我发现这段代码读取特定文件的所有行。Python:如何读取目录中的所有文件

我该如何编辑它,让它在目录“文件夹”中逐一读取所有文件(html,文本,php .etc),而无需指定每个文件的路径?我想搜索目录中的每个文件以查找关键字。

path = '/Users/folder/index.html' 
    files = glob.glob(path) 
    for name in files: 
     try: 
      with open(name) as f: 
       sys.stdout.write(f.read()) 
     except IOError as exc: 
      if exc.errno != errno.EISDIR: 
       raise 
+0

的所有内容,如果该关键字,如果找到了你想要做的又是什么??? – Hackaholic 2014-11-02 04:03:10

+0

@Hackaholic虐待只是打印一些东西 – user3702643 2014-11-02 04:10:01

+0

检查我给出的代码 – Hackaholic 2014-11-02 04:10:44

回答

1
import os 
your_path = 'some_path' 
files = os.listdir(your_path) 
keyword = 'your_keyword' 
for file in files: 
    if os.path.isfile(file): 
     f=open(os.path.join(your_path,file),'r') 
     for x in f: 
      if keyword in x: 
       #do what you want 
     f.close() 

os.listdir('your_path')列出目录
os.path.isfile将检查其文件或不

+0

编辑的代码根本没有输出,除了进程完成退出代码0 – user3702643 2014-11-02 05:15:29

+0

假设你用你自己的代码改变了'#do你想要的东西'这一行,它会做你想做的事情,包括打印任何输出。 – Psytho 2015-09-16 07:56:45

相关问题