我的目录结构如图,现在的情况是,我的主函数是model这个文件夹下的main_train.py,如图1所示,saved_data这个文件夹和model同级,其他py文件如config、docObject等和这两个文件夹同级。

现在我运行main_train.py,需要调用config.py这个配置文件,如图2:

在config.py这个文件里有这么一条语句,需要调用utils.py里面的方法,如图3

上图红色这条语句的目的是装载一个二进制文件,这个二进制文件的名字是word2vec.bin,所在位置是saved_data这个目录下面,如图4

那么问题来了,我在main_train.py中调用config.py和utils.py,word2ved.bin所在的相对路径究竟是相对于main_train.py还是相对于config.py呢?
事实证明,要写相对于main_train.py的相对路径,虽然我们是在config.py中传递参数的,但是就是要写相对于main_train.py的相对路径,也就是要写
"../saved_data/word2vec.bin"
而不是
"./saved_data/word2vec.bin"
后者是config.py或utils.py相对于word2ved.bin的相对路径。
至于为什么,我也目前有点似懂非懂,以后如果彻底明白了,再来记录。
网友评论