最近在看《Python绝技:运用python成为顶级黑客》这本书,书中端口扫描工具Nmap在我机器上的时候总报错,就是如题的Module not found Error: no module named nmap. 郁闷的是模块安装显示成功。百度后了解到是因为模块的搜索路径的设置问题,解决方法是设置环境变量,一劳永逸。方法如下:
1.
sudo nano ~/.bashrc
2.
export PYTHONPATH=$PYTHONPATH:工作路径
这里把“工作路径”替换为自己的项目路径
3.
source ~/.bashrc
可是问题依旧。
后来留意到bashrc中最后一段代码为:
# added by Anaconda3 installer
export PATH="/home/jim/anaconda3/bin:$PATH"
发现将其注释掉后代码运行正常。
猜测这段代码可能修改了模块搜索路径,可是我最后又添加了一句,为什么我的代码不起作用呢?
翻开Linux命令行工具书的环境变量一章,我注意到书中修改环境变量都是在原环境变量后追加,也就是:
# added by Anaconda3 installer
export PATH="$PATH:/home/jim/anaconda3/bin"
问题解决。