IOError: [Errno 2] No existe tal archivo o directorio Python
Tengo este pedazo de código, tratando de encontrar*.vm
archivos, y enviarlos a otro
Módulo que hice, que supone leer las líneas.
Este es el archivo principal:
<code>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() </code>
El módulo que supone leer las líneas:
<code>#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) </code>
el error es:
<code> File "/Users/***/Desktop/dProj7/parser.py", line 19, in __init__ myFile = open(fileName, 'r') IOError: [Errno 2] No such file or directory: 'BasicTest.vm' </code>
está claro que el script encuentra el archivo, (entra en el primer bucle),
¿Qué está pasando aquí?