简体   繁体   中英

Python: Import excel file using relative path

I tried to import an excel file which is not within the same folder than the script. I need to get one folder above, then into another folder (B_folder) and there is file 2_file.xlsx

I tried:

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

and got:

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

also tried:

  • foreslash instead of backslash

  • without the 'r' before path

but I always get the error message above or this one:

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

what is wrong?

You can calculate the absolute path first:

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

And use it to open the Excel file.

If the \\ do not work, you can use this syntax:

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

Thanks for your suggestions. None of them did work but I found a solution.

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

This works perfectly fine for me.

So if anybody faces the same problem, I hope this helps.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM