Отчет об ошибке файла скомпилированного расширения в LiClipse Python
doc_holder_str = ''
sample_H_value = open("C:\testGupixwin\BX-N-H.HED", "r")
standard_conc_value = open("C:\testGupixwin\gupixwin_H_stdConc.txt", "r")
sample_H_value_str = sample_H_value.readline()
while sample_H_value_str is not '' :
stripper_sample_H = float(sample_H_value_str[5:].lstrip(' '))
Я пытаюсь написать кусок кода (как показано выше), который читает некоторые значения, выполняет некоторые вычисления и возвращает указанные значения. Я использую LiClipse IDE
для питона.
Я проверил свой код, и он работает, но когда я попытался запустить его с реальными данными (для которого я создал новую папку, чтобы поместить все файлы, с которыми я буду работать), я получил сообщение об ошибке операционной системы, предлагающее вставить неверный аргумент.
Отчет об ошибке говорит;
Traceback (most recent call last):
File "C:\Python34\workspace\Gupixwin_Project.py", line 11, in <module>
sample_H_value = open("C:\testGupixwin\BX-N-H.HED", "r")
OSError: [Errno 22] Invalid argument: 'C:\testGupixwin\\BX-N-H.HED'
при нажатии на C:\testGupixwin\\BX-N-H.HED
это вызывает окно сообщения, предлагающее, и я цитирую,
Определение было найдено в C:\testGupixwin\BX-NH.HED, (которое не может быть открыто, потому что это скомпилированное расширение)
Я должен указать, что я чувствую, что ошибка в том, что система видит...\\BX-N.... Вместо..\BX-N... Что я ожидаю.
Кто-то предложил мне сделать это
[Открыть окно -> Настройки, перейдите в PyDev -> Редактор -> Стиль кода -> Типы файлов, найдите "Допустимые исходные файлы (через запятую)" и добавьте ", log".]
Я сделал это, но я все еще получу отчет OSERROR.
Спасибо за любую помощь
1 ответ
Я думаю, что проблема в том, чтобы сбежать с \
чередуйте строку в: open("C:\testGupixwin\BX-N-H.HED", "r")
с:
open( r"C:\testGupixwin\BX-N-H.HED", "r" ) #rawstring
# or
open( "C:\\testGupixwin\\BX-N-H.HED", "r" ) #escaping the '\' with '\'
(также сделайте это в следующей строке)