Ошибка ввода-вывода: [Errno 22] недопустимый режим ('w') или имя файла: "C:/Users/...../file.csv"
Я запускаю симуляцию, в которой я читаю и пишу несколько файлов (оба.txt или.csv) на каждом временном шаге, чтобы общаться с внешними программами на C#.
Время от времени в симуляции возникает ошибка: IOError: [Errno 22] неверный режим ('w') или имя файла:"C:/Users/..../filename.csv"
Это не происходит каждый раз, когда я запускаю его, и если я запускаю каждую строку вручную, иногда это работает просто отлично, а иногда нет.
Я пишу. CSV, как это:
path=r'C:/Users/..../filename.csv'
datatowrite.to_csv(path, index=False)
и файлы.txt, как это:
path=r'C:/Users/.../Filename.txt'
np.savetxt(path, datatowrite)
Я рассмотрел похожие вопросы, но большинство из них связано с использованием обратных косых черт и двоеточий, поэтому я использую необработанные строки и прямые косые черты в своем коде и превращаю строку в переменную "путь" перед каждым сохранением файла или обращением к нему. Когда я запускаю симуляцию, она иногда срабатывает, а иногда я получаю сообщение об ошибке:
[Errno 22] invalid mode ('w') or filename: 'C:/Users/.../Filename.txt'
Я должен отметить, что я пишу и сохраняю файлы в Dropbox - может ли это быть проблемой? Возможно, файлы не синхронизируются достаточно быстро, прежде чем следующая строка попытается получить к ним доступ. Несмотря на это, я не понимаю, почему это работает иногда и не работает в других случаях. Какие-либо предложения?