Resolver OSError: [Errno 2] No existe tal archivo o directorio en Python
-
el
OSError: [Errno 2] No existe tal archivo o directorioen Python -
Resuelva el
OSError: [Errno 2] No existe tal archivo o directorioen Python
Cuando ejecutamos un programa en Python, a menudo enfrentamos errores. Este artículo discutirá el OSError: [Errno 2] No such file or directory en Python.
el OSError: [Errno 2] No existe tal archivo o directorio en Python
Este OSError: [Errno 2] No such file or directory es generado por la biblioteca del sistema operativo. Este error ocurre cuando el archivo o directorio al que intentamos acceder no está disponible.
Ocurre debido a dos razones importantes. O el archivo o carpeta que intentamos abrir no existe, o estamos ingresando la ruta incorrecta de ese archivo o carpeta.
Python genera este error para informar al usuario que no puede ejecutar más el programa sin acceder al archivo al que se hace referencia en el programa. En la versión 3 de Python, obtenemos el FileNotFoundError: [Errno 2] No such file or directory.
Este error es una subclase de OSError, y ejecutamos este código en el sistema operativo Ubuntu.
Código de ejemplo:
# Python 3.x
import os
import sys
os.chdir(os.path.dirname(sys.argv[0]))
Obtenemos el siguiente resultado cuando ejecutamos el script usando python mycode.py.
Producción :
#Python 3.x
Traceback (most recent call last):
File "mycode.py", line 3, in <module>
os.chdir(os.path.dirname(sys.argv[0]))
FileNotFoundError: [Errno 2] No such file or directory: ''
Resuelva el OSError: [Errno 2] No existe tal archivo o directorio en Python
Cuando no especificamos una ruta, sys.argv[0] accede a mycode.py y os.path.dirname no puede determinar la ruta. Podemos ejecutar el siguiente script para solucionar el error usando el comando python ./mycode.py.
# Python 3.x
import os
import sys
os.chdir(os.path.dirname(sys.argv[0]))
print("Hello")
Producción :
#Python 3.x
Hello
Una forma alternativa de resolver este error es escribir el código anterior de la siguiente manera. Debido a que sys.argv[0] es solo un nombre de secuencia de comandos y no un directorio, por lo tanto, os.path.dirname() no devuelve nada.
Eso se convierte en una ruta absoluta correcta con el nombre del directorio usando os.path.abspath(). Ejecutamos el siguiente código usando el comando python mycode.py.
# Python 3.x
import os
import sys
os.chdir(os.path.dirname(os.path.abspath(sys.argv[0])))
print("Hello")
Producción :
#Python 3.x
Hello
I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.
LinkedInArtículo relacionado - Python Error
- Administrar fallas de segmentación en Python
- Archivo <Stdin>, Línea 1, en <Módulo> Error en Python
- Arreglar AttributeError: el objeto 'generador' no tiene atributo 'siguiente' en Python
- Arreglar el comando cl.exe falló: no existe tal archivo o directorio en Windows
- Arreglar NameError: la variable no está definida en Python
- Arreglar Socket.Gaierror: [Errno 8] Nodename ni Servname proporcionado, o desconocido en Python
