IOError: [Errno 2] Нет такого файла или каталога Python
3503 просмотра
1 ответ
У меня есть этот кусок кода, пытаюсь найти *.vm
файлы и отправить их другому
модуль, который я сделал, который должен читать строки.
это основной файл:
def VMTranslte(fileName):
print "FILEOVER ",fileName
from parser import Parser
from codeWriter import CodeWriter
if (fileName[-3:] == ".vm"):
outputFile = fileName[:-3]+".asm"
myWrite = CodeWriter(outputFile)
myWrite.setFileName(fileName)
myParser = Parser(fileName)
myWrite.setFileName(fileName);
translate(myParser,myWrite)
else:
if fileName[-1:] == "/": <===== CHECKS FOR DIRECTORY
mystr = fileName.split('/')[-2]
mystr = mystr.split('.')[0]+".asm"
outputFile = fileName+mystr
else:
outputFile = fileName+".asm"
myWrite = CodeWriter(outputFile)
for child in os.listdir(fileName):
if child.endswith('.vm'): <===== CHECK IF THERE IS *.vm FILE
print "CHILD: ",child <===== PRINTS THE FILE WANTED (MEANING FINDS IT)
myWrite.setFileName(child);
myParser = Parser(child) <===== CALLS THE READER MODULE DESCRIBED AT THE BOTTOM
translate(myParser,myWrite)
myWrite.close()
модуль, который должен читать строки:
#Constructor for Parser module.
def __init__(self,fileName):
import re
self.cmds = []
self.counter = 0
myFile = open(fileName, 'r') <=====ERROR OVER HERE
fLines = myFile.readlines()
for value in fLines :
lineStrip = value.strip()
if not (re.match("//",lineStrip) or len(lineStrip)==0):
self.cmds.append(lineStrip)
ошибка:
File "/Users/***/Desktop/dProj7/parser.py", line 19, in __init__
myFile = open(fileName, 'r')
IOError: [Errno 2] No such file or directory: 'BasicTest.vm'
Понятно, что скрипт находит файл, (он идет в первом цикле),
что здесь происходит?
Автор: Itzik984 Источник Размещён: 12.11.2019 09:09Ответы (1)
3 плюса
Решение
os.listdir не включает путь, только имя файла. Вы, вероятно, хотите вызвать Parser os.path.join(fileName, child)
в качестве аргумента.
Вопросы из категории :
- python Обработка XML в Python
- python Как я могу использовать Python itertools.groupby ()?
- python Python: На какой ОС я работаю?
- python Как я могу создать непосредственно исполняемое кроссплатформенное приложение с графическим интерфейсом на Python?
- python Вызов функции модуля с использованием его имени (строки)
- file Как получить список каталогов в C?
- file Динамически загружать файл JavaScript
- file Find number of files with a specific extension, in all subdirectories
- file Поиск и замена строки в файле в Python
- file Как я могу получить путь и имя файла, который выполняется в настоящее время?
- file-io Каков наилучший способ прочитать весь файл в std :: string в C ++?
- file-io Получить последние n строк файла с Python, похожего на tail
- file-io Как вы пишете конец файла, открытого с FILE_FLAG_NO_BUFFERING?
- file-io Как создать файл Excel (.XLS и .XLSX) в C # без установки MS Office?
- file-io Как мне создать временный файл с Какао?
- io Почему в Ruby нет реального StringBuffer или StringIO?
- io How to find out if a file exists in C# / .NET?
- io Легкий способ записи содержимого Java InputStream в OutputStream
- io Отправка того же, но модифицированного объекта через ObjectOutputStream
- io Получить OutputStream в строку