FileNotFoundError: [Errno 2] Pas un tel fichier ou répertoire
Je suis en train d'ouvrir un fichier CSV, mais pour une raison que python ne peut pas le localiser.
Voici mon code (c'est juste un simple code, mais je ne peux pas résoudre le problème):
import csv
with open('address.csv','r') as f:
reader = csv.reader(f)
for row in reader:
print row
source d'informationauteur user3266816
Vous devez vous connecter pour publier un commentaire.
Vous utilisez un chemin d'accès relatif, ce qui signifie que le programme recherche le fichier dans le répertoire de travail. L'erreur est de vous dire qu'il n'y a pas de fichier de ce nom dans le répertoire de travail.
Essayez d'utiliser l'exacte, ou absolue, le chemin d'accès.
Lorsque vous ouvrez un fichier avec le nom
address.csv
vous dites laopen()
fonction que votre fichier est dans le répertoire de travail courant. Ceci est appelé un chemin d'accès relatif.Pour vous donner une idée de ce que cela signifie, ajoutez ceci à votre code:
Imprimer le répertoire de travail actuel ainsi que tous les fichiers qu'il contient.
Une autre façon de dire la
open()
fonction de l'emplacement de votre fichier est en utilisant un chemin absolu, par exemple:essayer de supprimer le".csv " à partir du nom du fichier, ou en ajouter un supplémentaire dans le
fonction d'ouverture. a travaillé pour moi.
Utiliser le chemin d'accès exact.
Permet de dire que nous avons un script dans "c:\script.py" qui contiennent :
Permet de dire que l'index.html le fichier est dans le même répertoire "c:\index.html"
lorsque j'exécute le script à partir de cmd (ou shell)
Vous obtiendrez une erreur:
Et que, parce que "index.html" n'est pas dans le répertoire de travail qui est "C:\Users\Amine>". ainsi afin de faire le travail que vous avez à changer le répertoire de travail
C'est pourquoi est-il préférable d'utiliser un chemin absolu.
Pour les personnes qui sont encore en train d'erreur en dépit du passage de chemin d'accès absolu, doit vérifier si le fichier a un nom valide à l'égard de ce système d'Exploitation. Pour moi, j'ai essayé de créer un fichier sur linux avec un '/' dans le nom de fichier. Dès que j'ai enlevé '/', j'ai été capable de créer le fichier.
l'écriture de ce
with open('address.csv','r')
que cewith open('address.csv',mode='r')
a fonctionné pour moi.