python open () метод IOError: Нет такого файла или каталога:

По какой-то причине у моего кода, который использовался для работы, теперь возникает проблема с открытием простого файла .yaml. Я попытался перемещаться по файлу, предоставляя open () полный путь к файлу, и ни один из них не работает. Я видел, что этот вопрос задавали пару раз раньше, но не видел ответов, которые решили проблему.

Будем очень благодарны за любые советы о том, как вызвать файл, куда перемещать файл, или о других методах использования!

def readYaml(): file1 = open('recentlyUpdated.yaml') print 'opened recently updated' companyData = yaml.load(file1) file1.close() print 'read recentyl updated' file2 = open('sortedLists.yaml') sortedLists = yaml.load(file2) file2.close() return companyData, sortedLists 

ошибка:

 file1 = open('recentlyUpdated.yaml') IOError: [Errno 2] No such file or directory: 'recentlyUpdated.yaml' 

Естественно, я проверил, что это правильное имя файла.

2 Solutions collect form web for “python open () метод IOError: Нет такого файла или каталога:”

Убедитесь, что файл существует. Затем вы можете:

  • Вызовите os.chdir(dir) , dir – папка, в которой находится файл, затем откройте файл с его именем, как будто вы делали.
  • Укажите абсолютный путь к файлу в вашем open вызове.

Не забудьте использовать необработанную строку, если ваш путь использует обратную косую черту, например: dir = r'C:\Python32'

Если вы пошли с методом chdir , вы можете вызвать os.listdir() чтобы просмотреть список файлов в текущем рабочем каталоге.

Позвольте мне пояснить, как python находит файлы. Абсолютный путь – это путь, начинающийся с корневого каталога ваших компьютеров, например «C: \ Python \ scripts ..», если вы находитесь в окнах. Относительный путь – это путь, который не начинается с корневого каталога ваших компьютеров, и вместо этого относится к тому, что называется working directory . Вы можете просмотреть текущий рабочий каталог python, вызвав os.getcwd() .

Если вы попытаетесь open('sortedLists.yaml') , python увидит, что вы передаете ему относительный путь, поэтому он будет искать файл в текущем рабочем каталоге. Вызов os.chdir изменит текущий рабочий каталог.

Предположим, file.txt находится в `C: \ Folder '.

Чтобы открыть его, вы можете:

 os.chdir(r'C:\Folder') open('file.txt') #relative path, looks inside the current working directory 

или

 open(r'C:\Folder\file.txt') #full path 

Файл может существовать, но может иметь другой путь. Попробуйте написать абсолютный путь для файла.

Попробуйте os.listdir() чтобы проверить, что atleast python видит файл.

Попробуйте:

file1 = open ('Диск: \ Dir \ recentUpdated.yaml')

  • Может ли PyYAML сбрасывать элементы в не алфавитном порядке?
  • Python и PYAML - yaml.scanner.ScannerError: значения отображения здесь не допускаются
  • pyyaml: демпинг без тегов
  • Как я могу проанализировать YAML-файл в Python
  • YAML-файл url и скрипт в GAE python
  • принудительное сведение pyYAML
  • Сохранить / выгрузить файл YAML с комментариями в PyYAML
  • Получение ученого представления данных из неконтролируемого обучения в pylearn2
  • Python - лучший язык программирования в мире.