python 模块导入问题汇总


Posted in Python onFebruary 01, 2021

问题描述

python 模块导入问题汇总

此时start.py是启动程序,引入了core包中的user_control,transfer,withdraw三个模块文件

python 模块导入问题汇总

但执行start.py的时候,出现了以下错误:

python 模块导入问题汇总

上图中显示的问题是:在transfer.py导入user_control模块的时候,无法找到该模块。

问题查找

当时我就纳闷了,user_controltransfer在同一个包中,按理来说不用做任何处理就能导入.而且在导入user_control的时候也没有报错。

然后我单独执行了transfer.py文件,没有报错,也就是说能够找到user_control,但是为何在执行start.py的时候又找不到呢?

我对比了user_controltransfer文件,发现一个不同之处,就是user_control没有导入其他同包的文件,而transfer有。我想这是不是问题所在。

我将transfer中的import user_control注释掉后,再次运行start.py后就不会再报错了。

找到问题了,但是还是不明白这是为啥?

我猜想是不是因为运行start.py的时候,sys.path中没有core包的路径,导致transfer模块找不到user_control

所以我在start.py中,导入core包前,将core包的路径加入到sys.path。

我再次运行start.py,果然,程序没有再报错了。

原来是执行start.py时,transfer按照此时的sys.path进行查找user_control,而此时的sys.path中又没有core包的路径,所以导致错误。

总结

当执行py文件的时候,此时的py解释器会根据此时的sys.path查找模块,模块中也会使用该sys.path进行查找自己引入的模块,所以要确保执行的py文件引入的模块,和这些模块中引入的模块的路径在sys.path中。

到此这篇关于python 模块导入问题汇总的文章就介绍到这了,更多相关python 模块导入问题分析内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python读写Redis数据库操作示例
Mar 18 Python
举例讲解Python编程中对线程锁的使用
Jul 12 Python
Python常见格式化字符串方法小结【百分号与format方法】
Sep 18 Python
解决PySide+Python子线程更新UI线程的问题
Jan 11 Python
树莓派实现移动拍照
Jun 22 Python
tensorflow将图片保存为tfrecord和tfrecord的读取方式
Feb 17 Python
Python3.7.0 Shell添加清屏快捷键的实现示例
Mar 23 Python
解决Python中报错TypeError: must be str, not bytes问题
Apr 07 Python
Python如何将函数值赋给变量
Apr 28 Python
python中wx模块的具体使用方法
May 15 Python
Python实现一个论文下载器的过程
Jan 18 Python
Python装饰器的练习题
Nov 23 Python
用python制作个视频下载器
Feb 01 #Python
python基于pexpect库自动获取日志信息
Feb 01 #Python
Python入门基础之数字字符串与列表
Feb 01 #Python
Pyecharts 中Geo函数常用参数的用法说明
Feb 01 #Python
Python+MySQL随机试卷及答案生成程序的示例代码
Feb 01 #Python
python实现代码审查自动回复消息
Feb 01 #Python
anaconda安装pytorch1.7.1和torchvision0.8.2的方法(亲测可用)
Feb 01 #Python
You might like
PHP反射API示例分享
2016/10/08 PHP
PHP实践教程之过滤、验证、转义与密码详解
2017/07/24 PHP
Google Suggest ;-) 基于js的动态下拉菜单
2006/10/11 Javascript
Yii-自定义删除确认弹框(zyd)jquery实现代码
2013/03/04 Javascript
一个简单的JS鼠标悬停特效具体方法
2013/06/17 Javascript
js中哈希表的几种用法总结
2014/01/28 Javascript
使用jQuery时Form表单元素ID和name命名大忌
2014/03/06 Javascript
初识Javascript小结
2015/07/16 Javascript
基于javascript实现动态显示当前系统时间
2016/01/28 Javascript
jQuery1.9+中删除了live以后的替代方法
2016/06/17 Javascript
简单理解js的冒泡排序
2016/12/19 Javascript
jQuery实现的两种简单弹窗效果示例
2018/04/18 jQuery
详解Angular如何正确的操作DOM
2018/07/06 Javascript
node之本地服务器图片上传的方法示例
2019/03/26 Javascript
koa-router路由参数和前端路由的结合详解
2019/05/19 Javascript
在Vue中用canvas实现二维码和图片合成海报的方法
2019/06/10 Javascript
vue通过video.js解决m3u8视频播放格式的方法
2019/07/30 Javascript
Layui 动态禁止select下拉的例子
2019/09/03 Javascript
解决vue项目刷新后,导航菜单高亮显示的位置不对问题
2019/11/01 Javascript
解决Pycharm无法import自己安装的第三方module问题
2018/05/18 Python
Python+selenium实现自动循环扔QQ邮箱漂流瓶
2018/05/29 Python
Python 比较文本相似性的方法(difflib,Levenshtein)
2018/10/15 Python
python logging模块书写日志以及日志分割详解
2019/07/22 Python
python join方法使用详解
2019/07/30 Python
python中下标和切片的使用方法解析
2019/08/27 Python
linux 下python多线程递归复制文件夹及文件夹中的文件
2020/01/02 Python
纯HTML+CSS3制作导航菜单(附源码)
2013/04/24 HTML / CSS
CSS3 transform的skew属性值图文详解
2014/07/21 HTML / CSS
CSS3 创建网页动画实现弹跳球动效果
2018/10/30 HTML / CSS
采购文员岗位职责
2013/11/20 职场文书
实习单位接收函模板
2014/01/10 职场文书
小学生美德少年事迹
2014/02/02 职场文书
运动会开幕词
2015/01/28 职场文书
2015年学校信息技术工作总结
2015/05/25 职场文书
人事行政部各岗位职责说明书!
2019/07/15 职场文书
解决python3安装pandas出错的问题
2021/05/20 Python