python调用文件时找不到相对路径的解决方案
python调用文件时找不到相对路径
current_path = os.path.dirname(__file__)
if current_path=='':
sys.path.append(sys.path[0]+'/..')
else:
sys.path.append(current_path+'/..')
解释:
current_path = os.path.dirname(__file__)
#寻找当前文件的绝对路径
if current_path=='':
#当直接用python xx.py执行该文件时添加绝对路径sys.path[0](此时current_path为空)
sys.path.append(sys.path[0]+'/..')#以寻找上一级目录为例,可以自己修改
else:
#当调用该.py文件时,取current_path(此时为绝对路径)
sys.path.append(current_path+'/..')
python相对路径问题
最近在调试代码时候遇到了相对路径上的问题,测试的代码结构录下。
代码与读入的图像文件不在同一级目录,当我直接运行main.py代码的时候会提示找不到10.png文件。
当在terminal窗口中在与图像文件同一级的目录执行python code/main.py时运行成功,能够找到文件并成功执行代码。
由此可以得出一个结论,相对路径的相对位置是程序运行的位置,而不是文件存在的位置,那么想要解决这个问题,只需要设置一下程序的工作路径即可。
此时能够根据文件目录找到相对路径的位置。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
相关文章