关于python自定义模块的导入问题
文件结构如下:账户注册
bin
conf
peizhi_wenjian.py
qidong_chengxu.py
core
zhanghu_zhuce.py
db
beifen_shujulu.ini
zhu_shujuku.ini
log
rizhi.txt
我的需求是把 bin.conf.peizhi_wenjian 中的所有数据导入到 core/zhanghu_zhuce.py当中来进行使用
所以我在core/zhanghu_zhuce.py当中进行了导入
from bin.conf.peizhi_wenjian import *
# 验证导入是否成功
print(ROOT_DIR) #ROOT_DIR是peizhi_wenjian.py当中存放的一个变量.如果导入才成功我应该可以在终端看到输出结果.
这样的代码如果是用Pychram的话就没有任何问题我能正常使用peizhi_wenjian中的数据
但是如果使用Visual Studio Code就不行了会报错ModuleNotFoundError: No module named 'bin' 如图所示
请问是我的导入语法出了问题还是软件设置问题?如何解决这个问题? 路径不对?? pycharm可以运行是因为bin和你运行的函数在同一个文件夹下,可以找到
Visual Studio Code 要导入的话要写路径的吧 wp231957 发表于 2021-3-9 13:14
路径不对??
路径完全正确
两个编辑器执行的是同一个文件,而且文件内容100%相同.我直接粘贴的不可能出现文件内容不相同的情况. yuedong 发表于 2021-3-9 13:47
pycharm可以运行是因为bin和你运行的函数在同一个文件夹下,可以找到
Visual Studio Code 要导入的话要写 ...
找到原因了.需要把bin所在的路径写入sys.path
Pycharm默认的sys.path中是有这个路径的,但是VSC当中却没有需要手动加入. hrp 发表于 2021-3-9 14:54
from ..bin.conf.peizhi_wenjian import *
已经找到原因了.需要将项目根目录加入到sys.path当中 pycharm已经加好了.vsc需要自己加.
你那么做也一样会报错:
ImportError: attempted relative import with no known parent package
目前我找到的唯一解决办法就是
sys.path.insert(0, r"E:\账户注册\\")
页:
[1]