Python: импортировать файл Excel, используя относительный путь - PullRequest
0 голосов
/ 01 мая 2018

Я попытался импортировать файл Excel, который находится не в той же папке, что и скрипт. Мне нужно получить одну папку выше, затем в другую папку (B_folder) и там есть файл 2_file.xlsx

Я пытался:

df = pd.read_excel(r'..\B_folder\2_file.xlsx')

и получил:

FileNotFoundError: [Errno 2] No such file or directory: '..\\B_folder\\2_file.xlsx'

также пробовал:

  • наклонная черта вместо обратной косой черты

  • без 'r' перед путем

но я всегда получаю сообщение об ошибке выше или это:

OSError: [Errno 22] Invalid argument: '..\\B_folder\2_file.xlsx'

что не так?

Ответы [ 2 ]

0 голосов
/ 09 мая 2018

Спасибо за ваши предложения. Никто из них не работал, но я нашел решение.

df = pd.read_excel(r'./../B_folder/2_file.xlsx')

Это прекрасно работает для меня.

Так что, если кто-то сталкивается с той же проблемой, надеюсь, это поможет.

0 голосов
/ 01 мая 2018

Сначала вы можете рассчитать абсолютный путь:

import os.path
fullpath = os.path.abspath('..\B_folder\2_file.xlsx')

И используйте его, чтобы открыть файл Excel.

Если \ не работает, вы можете использовать этот синтаксис:

fullpath = os.path.abspath(os.path.join('..', 'B_folder', '2_file.xlsx'))
...