Я предполагаю, что ваша файловая структура выглядит следующим образом.
folder---
py---
dico---
И я также предполагаю, что вы пробовали os.listdir("../dico")
и получили ошибку, похожую на эту FileNotFoundError: [Errno 2] No such file or directory:
Но позвольте мне заверить вас, что код верен. Причина ошибки может быть следующей.
Если вы запускаете код из IDE, проверьте путь терминала.
Это будет /yoursystempath/folder/
, а не /yoursystempath/folder/py
. это распространенная ошибка, так как большинство IDE запускает интерпретатор python на уровне папки проекта. не на уровне сценария.
лучший способ справиться с путями в python - создать переменную rootdir
в одном из файлов сценария в папке py и импортировать ее, где требуется.
from os import listdir, path
# this return the abspath to the current folder irrespective of where interpreter starts
curdir = path.abspath(path.join(path.abspath(__file__), path.pardir))
# this will return the rootdir path assuming its one level up.
#in your case it will return abs path for folder
rootdir = path.abspath(path.join(curdir, path.pardir))
#now use rootdir to reference any file in your file structure
#to get to dico use the following
dicoPath = path.abspath(path.join(rootdir,"dico"))
#now use listdir with varible dicoPath
listdir(dicoPath)
Теперь, если вы хотите использовать переменную rootdir в другом скрипте в папке py, используйте следующее.
from yourFileWhichHasTherootdir import rootdir