python;读取文件路径错误



>我有一个目录结构;

DIR1: ----outerPyFile.py ----DIR2: --------innerPyFile.py --------DIR3: ------------fileToRead.csv


我正在阅读 fileToRead.csv ininnerPyFilepd.read_csv('DIR3/fileToRead.csv')如果我单独运行 innerPyFile.py 则工作正常

现在,当 outerPyFile.py 内部导入innerPyFile模块时import innerPyFile

- FileNotFoundError:DIR3\fileToRead.csv.不存在

我尝试将 innerPyFile 中的路径替换为绝对路径pd.read_csv(os.path.abspath('DIR3/fileToRead.csv'))

尽管如此,当我运行 outerPyFile 时,我得到,FileNotFoundErrorC:\DIR1\DIR3\fileToRead.csv不存在,

这里的代码省略了 DIR2,所以我将代码更改为pd.read_csv(os.path.abspath('DIR2/DIR3/fileToRead.csv'))

现在,当我运行 outerPyFile.py 代码结构时,代码结构可以正常工作文件,这是可以接受的。 但是当我单独运行 innerPyFile 时,这里会出现问题,因为它会搜索 DIR2,而 DIR2 在 innerPyFile 的 CWD 中不存在。

任何人都可以怀疑这种行为,
请还原我这是怎么回事?

仅供参考,我也尝试了pathLib模块,但没有解决问题。

试试这个:

innerPyFile.py

import os
script_path = os.path.abspath(__file__) # i.e. /path/to/dir/foobar.py
script_dir = os.path.split(script_path)[0] #i.e. /path/to/dir/
rel_path = "DIR3/fileToRead.csv"
abs_file_path = os.path.join(script_dir, rel_path)
pd.read_csv(abs_file_path)

outerPyFile.py

import DIR2.innerPyFile
#......do something.....

相关内容

  • 没有找到相关文章

最新更新