2015-03-26 3 views
0

Я пытаюсь прочитать все файлы из каталога и разбить слова. Но после чтения первого файла я получаю ошибку как IOError: [Errno 2] Нет такого файла или каталога: '200'. Вот мой код:IOError: [Errno 2] Нет такого файла или каталога: '200'

#!/usr/bin/env python 
import sys 
import os 
mypath = 'data/' 
listing = os.listdir(mypath) 
print listing 
for infile in listing: 
     print "current file is: " + infile 
     with open(infile,'r') as inputd: 
       for line in inputd: 
         line = line.strip() 
         words = line.split() 
         for word in words: 
           print '%s' % (word) 

Каталог содержит файлы 100, 200, 300 и 400.
Я получаю выход как

~$ python mapper3.py 
['100', '200', '300', '400'] 
current file is: 100 
opened:100 
100 1 
200 1 
217 1 
300 1 
400 1 
current file is: 200 
opened:200 
Traceback (most recent call last): 
    File "mapper3.py", line 13, in <module> 
    with open(infile,'r') as inputd: 
IOError: [Errno 2] No such file or directory: '200' 
+0

Вы видите 200, когда вы 'ls' в каталоге? – karthikr

ответ

0

Вы пытаетесь открыть файл с именем «200 "в вашем текущем рабочем каталоге, а не в data/. Попробуйте указать полный путь.

with open(os.path.join(mypath, infile),'r') as inputd: 

 Смежные вопросы

  • Нет связанных вопросов^_^