Python导入文件的解决方法
问题描述
在pycharm中调试代码是没问题的,换到vscode中路径就出问题; 或者不知道从一个py文件中导入另一个py文件中的函数该怎么办呢?
解决方法两种
第一种
下面看一下文件存放目录
project
|——aaa
|——test_a.py
|——bbb
|——test_b.py
假如你想从test_b.py中调用test_a.py里的函数,或者从 ==任何位置== 调用test_a.py,只需要在test_b.py中或你想run的文件中添加如下几行代码:
1 | import sys |
第二种
将项目打包,在项目的根目录下新建setup.py文件,然后在文件中写入如下内容
1 | import os.path |
setup()中的内容可替换为自己的信息,也可不替换,然后保存。
然后
1 | $ cd project |
这样项目的路径也可以加入到系统路径中,至此可以正常调用啦。(使用develop是开发模式加入,install是永久加入)
解决原理
当程序运行需要导入文件时,是从程序中的导入路径进行寻找。找不到时就会去系统路径中寻找,这时,将需要该项目的路径添加到系统路径或调用的py文件路径中即可,用的是import sys。
sys.path是python一个搜索模块的路径集,属于list类型; 在退出python环境后,添加的路径就会自动消失~
评论