python开发中 No module named xxx ,是比较常见的问题,今天只探讨其中的一种情况:
同一目录内,a.py 无法import b.py 产生的No module named b
同一文件夹内,新建a.py无法导入已存在的b.py
import b
我的pthon环境:
python3.9 官网下载的zip包
pycharm 2022.1
折腾了三天三夜,都难以解决。
在折腾的过程中,也算是了解到了一些东西,记录下来。
import导入py模块,这个文件明明存在,肉眼可见的存在,但python解释器就是找不到。
核心原因很简单,当前目录不在python解释器执行搜索目录中,说到这里就不得不到提到一个东西:sys.path , sys是python内置库。python解释器搜索路径是按sys.path列表进行
来打印看看:
import sys print('sys path:', sys.path)
你检查一下,当前py文件目录是否存在。确实没有当前目录
解决办法:
1、sys.path中添加当前目录
import sys sys.path.append('')
这是什么鬼
>>> import sys >>> sys.path ['', '/opt/ros/melodic/lib/python2.7/dist-packages', '/home/xxx/anaconda3/lib/python37.zip', '/home/xxx/anaconda3/lib/python3.7', '/home/xxx/anaconda3/lib/python3.7/lib-dynload', '/home/xxx/anaconda3/lib/python3.7/site-packages'] >>>
看到没,你的sys.path中有一个空字符。因为这个空字符串的存在,import时他就能从当前目录中查找python模块;
2、把当前目录加入sys.path中,也可以这样写:
import sys , os sys.path = [os.path.dirname(__file__)] + sys.path
以上方法1、2都可以解决import找不到已定义py模块问题。但是,项目中文件目录多了,每个py文件都写这,显得非常不python。。。
于是:
3、还有人,认为应该删除python目录下的pth文件。
类似这样的: python39._pth
不过我没有测试这个方法,我认为这些方式都是不够好的解决方式。
我认为是因为:
我的python解释器采用zip包解压,添加到系统path中这种安装方式,导致的环境不兼容。
于是,
删除zip这种方式安装的python,重新下载了exe格式的python安装,问题也得到了解决,同目录内的自己写的py文件就能import
相关推荐
编译安装Python3.7报错ModuleNotFoundError: No module named '_ctypes',所需安装包
解决python 报错:No module named 'requests 解决办法
python3缺少依赖文件,python3有_bz2和bz2,python2只有bz2。把解压文件放在 python安装目录/lib/python3/lib-dynload
问题描述 在使用paddlepaddle进行深度学习过程中...ModuleNotFoundError: No module named 'paddle.v2' 解决思路 更新到python3之后,这个包里的画图工具改变了,使用python2的可以使用,但实验python3就不行了,缺
本文档的主要目的在于解决运行coco.py 出现 ModuleNotFoundError: No module named 'imgaug' 错误的解决方法。
主要介绍了详解python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'如何解决,感兴趣的可以了解一下
ubuntu系统中import h5py, ImportError: No module named h5py的解决方法
Python里出现ModuleNotFoundError: No module named ‘pandas’时该怎样解决 1、打开网址https://pypi.org/project/pandas/#files,找到自己所安装的Python版本所对应的pandas版本. 2、我下载的是 下载时需将pandas...
解决这个错误问题:importerror no module named fcntl。 解压后,将fcntl.py文件放到PYTHONPATH路径即可,我是放到了Python27\Lib目录下。
Python使用pip安装报错ModuleNotFoundError: No module named ‘pkg_resources’的解决方法 大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为:亓官劼...
python3.X中关于报错信息“ModuleNotFoundError: No module named ‘numpy’”的处理方法 笔者运行环境:MacOs Catalina ; python3.7.0 ; PyCharm2019.3.3 笔者实操时遇到“ModuleNotFoundError: No module named ...
解决Windows下caffe Python报错:Import Error No module named google.protobuf.internal.
ModuleNotFoundError: No module named 'example' 1、Python中,每个py文件被称之为模块,每个具有_init_.py文件的目录被称为包。只要模块或者包所在的目录在sys.path中,就可以使用import模块或者import包来使
解决Python安装模块出错 ImportError: No module named setuptools-附件资源
然后直接用的话发现用不了,会出现错误:ModuleNotFoundError: No module named ‘Crypto’ 这个时候用everything这个软件查找pycrypto,这个软件可以直接百度下载,很方便的一个软件。 然后搜索出来之后找到文件夹...
背景: 因服务器部署了flask项目,安装了python3,故重启宝塔面板报错 ... mod = import_module(‘.’.join(components)) File “/root/anaconda3/lib/python3.7/importlib/__init__.py”, line 127, in import_modu
PyCharm不识别PyQt5的问题如图所示,引用PyQt5的时候显示错误“ModuleNotFoundError: No module named ‘pyqt5’” 首先确定已经安装了PyQt5是成功的 Python\Python36\Lib\site-packages这个路径下面去看有没有PyQt5...
下面,添加python项目时的注意事项: 步骤一:安装好Jenkins后,进入首页,点击新建项目//进入项目名称、风格选择的页面//选择自由风格,点击【ok】 步骤二:项目配置,在“一般”选项卡里面选择【高级】;在高级...
import requests ModuleNotFoundError: No module named ‘requests’