ubuntu下pycharm中import dns.resolver报错(ImportError:No module named dns.resolver)解决办法
在pycharm中使用import dns.resolver时,总是报错No module named dns.resolver,尝试了很多方法,最后终于解决了。
1、下载dnspython包
可以使用ubuntu的图形窗口下载安装,这里直接使用
wget http://www.dnspython.org/kits/1.16.0/dnspython-1.16.0.tar.gz
tar -zxvf dnspython-1.16.0.tar.gz
cd dnspython-1.16.0
python setup.py install
2、ImportError原因分析与解决
(1)名称问题:
程序名称与包的名称一样,导致出错,这是只需把程序的名字改一下,不要和包的名字一样,否则会搜索不到想要导入的包。
(2)路径问题:
包的位置不在python的搜索路径内。程序执行时,会按照它的搜索路径进行搜索,如何包不在搜索路径内,当然就搜索不到啦。
使用 以下代码查看搜索路径
import sys
print sys.path
如果没有包的目录,可以使用sys.path添加(sys.path是python的搜索模块的路径集,是一个list,可以在python环境下添加相关路径,但在退出python环境后,自己添加的路径就会自动消失)
sys.path.append('具体路径')
上述方法只能暂时添加路径,并且添加路径的代码要写在前边。还可以(一劳永逸的方法):
a. 使用PYTHONPATH环境变量
export PYTHONPATH=/usr/l