上一篇:php面试宝典(2020-04-24 22:06:54)
文章大纲

PyCharm下unresolved reference的解决方法(不同于大多数)

2020-04-26 10:55:43

刚开始学python,上次导包出现unresolved reference红色提示,折腾好久一直没解决。

from bs4 import BeautifulSoup


今天重新试了下网上普遍的解决方法:

1. 进入PyCharm->Preferences->Build,Excution,Deployment->Console->Python Console勾选上Add source roots to PYTHONPATH; 
2. 进入PyCharm->Preferences->Project->Project Structure,通过选中某一目录右键添加sources; 
3. 点击Apply和OK即可.

依然不得行。


上次是用pip命令安装的requests和beautifulsoup4这两个包的,也不知道装到哪里去了。


不管上次搞了什么鬼,这次我选择自己手动安装。


首先本人说明一下,本人系统环境Windows10,项目目录和python安装目录不在一起。

python安装目录:

E:\programdata\python\

python项目目录:

F:\python


https://www.lfd.uci.edu/~gohlke/pythonlibs/里下载requests和beautifulsoup文件:

requests‑2.23.0‑py2.py3‑none‑any.whl
beautifulsoup4‑4.9.0‑py3‑none‑any.whl

然后将whl后缀改成zip,再解压,最后把requests和bs4文件夹拷贝到自己安装的python目录下的Lib里去。(随着时间,上面文件版本可能会有所更新,请稍加注意)


本人拷贝完后,PyCharm里关于unresolved reference的红色划线提示就自动消除了。


虽然这个unresolve reference的提示问题解决了。


但从cmd进入python命令行,

import requests

执行包的导入依然报各种错误:

ModuleNotFoundError: No module named 'urllib3'
ModuleNotFoundError: No module named 'chardet'
ModuleNotFoundError: No module named 'certifi'
ModuleNotFoundError: No module named 'idna'

说明requests包依赖上面这些包,于是本人就从刚才下载包的网站,把这些依赖包都一一下载下来,照着上面手动的方式把包安装进去。

chardet‑3.0.4‑py2.py3‑none‑any.whl
certifi‑2020.4.5.1‑py3‑none‑any.whl
idna‑2.9‑py3‑none‑any.whl

(urllib3是通过pip install urllib3方式安装的)

安装完好后,python命令行里import requests就不会再报错了。


最后用pip list命令查看了下,结果如下:

Package        Version
-------------- -------
beautifulsoup4 4.8.2
bs4            0.0.1
pip            19.2.3
setuptools     41.2.0
soupsieve      2.0
urllib3        1.25.9

可以看出,手动安装的requests包并没有在pip list里显示,而刚刚安装的urllib3显示了。由此可推断出,上一次我是安装了beautifulsoup4的。


另外,在选择从Windows cmd进入之前,翟码农开始用的git bash,可是python命令一直卡住,处于停滞状态。


经网上百度,如果用git bash窗口,则用如下两种方式与python进行命令交互:

python -i
winpty python


退出命令交互,则用如下两种方式:

exit()
quit()


本文为翟码农个人博客下有关python学习的原创文章,转载请注明出处:http://www.zhai14.com/blog/annoying-tip-of-unresolved-reference-in-pycharm-editor.html



上一篇:php面试宝典(2020-04-24 22:06:54)
我要评论
评论列表