- Assurez-vous que le fichier existe : utilisez
os.listdir()
pour voir la liste des fichiers dans le répertoire de travail actuel
- Assurez-vous d'être dans le répertoire que vous pensez être avec
os.getcwd()
(si vous lancez votre code à partir d'un IDE, vous pouvez très bien être dans un répertoire différent)
- Vous pouvez alors soit :
- Appelez
os.chdir(dir)
, dir
étant le dossier où se trouve le fichier puis ouvrez le fichier avec son seul nom comme vous le faisiez.
- Indiquez un chemin d'accès absolu au fichier dans votre fichier
open
appeler.
- N'oubliez pas d'utiliser une chaîne brute si votre chemin d'accès utilise des antislashs, comme ainsi :
dir = r'C:\Python32'
- Si vous n'utilisez pas raw-string, vous devez échapper chaque backslash :
'C:\\User\\Bob\\...'
- Les barres obliques fonctionnent également sous Windows
'C:/Python32'
et n'ont pas besoin d'être échappés.
Permettez-moi de préciser comment Python trouve les fichiers :
- Un site chemin absolu est un chemin qui commence par le répertoire racine de votre ordinateur, par exemple
C:\Python\scripts
si vous êtes sous Windows.
- A chemin relatif est un chemin d'accès qui ne commence pas par le répertoire racine de votre ordinateur, mais qui est plutôt relatif à un élément appelé le répertoire de travail . Vous pouvez afficher le répertoire de travail actuel de Python en appelant
os.getcwd()
.
Si vous essayez de faire open('sortedLists.yaml')
Python verra que vous lui transmettez un chemin relatif, et cherchera donc le fichier dans le répertoire de travail actuel.
Appel à os.chdir()
changera le répertoire de travail actuel.
Exemple : Disons que file.txt
se trouve dans C:\Folder
.
Pour l'ouvrir, vous pouvez le faire :
os.chdir(r'C:\Folder')
open('file.txt') # relative path, looks inside the current working directory
o
open(r'C:\Folder\file.txt') # absolute path