欢迎关注Hadoop、Spark、Flink、Hive、Hbase、Flume等大数据资料分享微信公共账号:iteblog_hadoop
  1. 文章总数:978
  2. 浏览总数:11,966,453
  3. 评论:3937
  4. 分类目录:106 个
  5. 注册用户数:6126
  6. 最后更新:2018年12月15日
过往记忆博客公众号iteblog_hadoop
欢迎关注微信公众号:
iteblog_hadoop
大数据技术博客公众号bigdata_ai
大数据猿:
bigdata_ai

Python中ImportError: No module named的解决

有时候我们会自己编写一些 Python 内置中没有的 module ,比如下面我自定义了一个名为 matrix 的 module ,然后直接在命令行中引入则会出现下面的错误:

[iteblog@www.iteblog.com ~]$ python
Python 2.7.3 (default, Aug  4 2016, 21:49:57) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import matrix
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named matrix
>>>

这是因为我们编写的 module 并没有加入到当前 Python 运行环节中,所以肯定会出现这种异常。其实我们只需要将自定义的 module 加入到当前环境中。这里列举出以下两种方法。

No module named matrix
如果想及时了解Spark、Hadoop或者Hbase相关的文章,欢迎关注微信公共帐号:iteblog_hadoop

通过 sys 加载自定义module

这个不需要在 Python 启动之前设置的,具体操作如下:

>>> import sys
>>> sys.path.append('/home/iteblog/mllib/')
>>>

然后我们可以通过 sys.path 来查看是否将自定义的 module 加入到环境变量中:

>>> sys.path
['', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages','/home/iteblog/mllib/']
>>> import matrix

从上面的输出可以看到 matrix 已经成功加入到当前 Python 运行环境变量中,所有我们现在运行 import matrix 不会有任何的错误。

通过PYTHONPATH添加

第二种方法就是通过 PYTHONPATH 环境变量添加,如下:

$export PYTHONPATH=$PYTHONPATH:/home/iteblog/mllib/

一样可以实现这个效果。

本博客文章除特别声明,全部都是原创!
转载本文请加上:转载自过往记忆(https://www.iteblog.com/)
本文链接: 【Python中ImportError: No module named的解决】(https://www.iteblog.com/archives/2148.html)
喜欢 (10)
分享 (0)
发表我的评论
取消评论

表情
本博客评论系统带有自动识别垃圾评论功能,请写一些有意义的评论,谢谢!