用一个python文件去调用另一个python文件,关于相对路径的处理?

比如用a.py调用执行b.py,但是a.py和b.py路径环境不一样,而b.py中有使用相对路径读取文件,这时会报错,怎么在a.py中进行配置,使其调用b.py时路径和其相同,能否做到?

比如目录结构是这样:

clipboard.png
a.py文件内容是:

def read_file():
    with open('./for_read.txt', 'r') as fp:
        fp.read()

    return

read_file()

 

b.py文件内容是:

import os

os.system('python ./inner/a.py')

 

此时执行b文件会报错:

FileNotFoundError: [Errno 2] No such file or directory: './for_read.txt'

 

相对路径是按照你执行程序的位置来定义的,不是该文件的路径位置相对。比如你在a文件夹下执行b文件的程序,此时相对路径的起点是a文件夹不是b!!
posted @ 2020-02-18 17:54  天空是我喜欢的颜色  阅读(1153)  评论(0编辑  收藏  举报