2014-11-02 105 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

相關問題