python路径
python的相对路径
在pycharm中运行py文件,使用相对路径加载文件,基准路径是脚本执行的工作目录,即在运行控制台中:
wdir='/home/pbc/Documents/PycharmProjects/myEPI/src'
也就是说,是你要加载的目标文件相对于**工作目录(就是你运行的那个文件所在目录,调用的就不算了,就是第一次最初运行的那个py文件所在目录)**的路径,而不是你所在的py文件(指的是做加载文件操作的那个py文件)相对你要加载的目标文件的路径
实验
一种做法,比如你有如下文件结构:
-src
-model
-test.py【你所在位置,你要读取read.npy文件】
-read.npy
-main.py【调用了test.py】
在test.py文件中:
import numpy as np
import torch
def test():
embedding_matrix = torch.as_tensor(np.load("model/embedding_matrix-1.npy")) #运行test.py文件时,报错;运行main.py文件时,正常
embedding_matrix = torch.as_tensor(np.load("embedding_matrix-1.npy"))# 与上面相反
print(embedding_matrix)
if __name__ == '__main__':
test()
在main.py文件中:
from model import test
test.test()
结果:分别运行两个py文件,会发现其wdir不一样,因此需要在这个基础上编写相对路径