os.path.join возвращает Errno22 в Enthought / Python - PullRequest
0 голосов
/ 28 сентября 2011

Я работаю с довольно сложной программой Enthought / Python, которая возвращает эту ошибку:

File "C:\Users\riddle\Desktop\FCI2\src\equation.py", line 41, in main
fci_data = np.load(os.path.join(local_data_path, "fci_data.npy"))
File "C:\Python27\lib\site-packages\numpy\lib\npyio.py", line 329, in load
fid = open(file, "rb")
IOError: [Errno 22] invalid mode ('rb') or filename: 'C:\\Users\white\\Desktop\
\FCI2New\\data\\fci_data.npy'

В отношении этого:

    fci_data = np.load(os.path.join(local_data_path, "fci_data.npy"))
    fci_data = fci_data.replace("'\\','/'")

Дополнительные косые черты меня особенно озадачивают. local_data_path является глобальным и определяется следующим образом:

local_data_path = static.base_data_path
base_data_path = "C:\Documents and Settings\white\Desktop\FCI2New\data" (from the        static module)

У кого-нибудь есть идея, в чем здесь проблема? 'rb' должен быть правильным режимом для fci_data. Прошу прощения за любые ошибки или очевидные вопросы, я новичок.

Anne

1 Ответ

0 голосов
/ 29 сентября 2011

попробуйте сначала нормализовать путь:

local_data_path = os.path.normpath(local_data_path)
...