PyCharm无代码提示解决

作为开发人员,我们已经习惯了IDE的智能提示,针对PyCharm无代码提示整理下解决方案。

PyCharm无代码提示大概可以归为3类

  • Python内置语法无智能提示

  • 通过pip安装的第三方库,导入后代码无提示

  • 第三方库函数代码无提示 其中问题最多的可能就是这种

下面咱们就针对这3类问题说下解决方案

环境:Mac、PyCharm 2022.3.3 、Python3.11.1

1、Python内置语法无智能提示

复现:准备导入包“输入i”无只能提示

PyCharm无代码提示解决_第1张图片

解决:File->Power Save Mode 取消勾选

PyCharm无代码提示解决_第2张图片

解决后效果:

PyCharm无代码提示解决_第3张图片

2、通过pip安装的第三方库,导入后代码无提示

这种是因为安装的第三方库没有加入到当前环境中,解决办法:PyCharm->References->Project:python->Python Interpreter

PyCharm无代码提示解决_第4张图片
PyCharm无代码提示解决_第5张图片
PyCharm无代码提示解决_第6张图片
PyCharm无代码提示解决_第7张图片

3、第三方库函数代码无提示(重要)

复现:我这里以urllib库读取网页内容为例,在通过response调用read()函数时无提示。

PyCharm无代码提示解决_第8张图片

代码:

import urllib.request

url = "http://www.baidu.com/"

response = urllib.request.urlopen(url)

# 读取数据
response.

解决办法:

前提是知道变量的类型,要获取变量类型,我们可以用type()函数提前打印下类型

PyCharm无代码提示解决_第9张图片

①、通过isinstance()函数

isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。

代码:

# 记得导入包
import http.client

import urllib.request

url = "http://www.baidu.com/"

response = urllib.request.urlopen(url)
# 通过isinstance() 增加智能提示
assert isinstance(response, http.client.HTTPResponse)

response.rea
PyCharm无代码提示解决_第10张图片

②、使用类型注解

代码:

# 记得导入包
import http.client
import urllib.request

url = "http://www.baidu.com/"

# 使用类型注解
response = urllib.request.urlopen(url)  # type: http.client.HTTPResponse

response.
PyCharm无代码提示解决_第11张图片

③、通过注释指定类型

代码:

# 记得导入包
import http.client
import urllib.request

url = "http://www.baidu.com/"

response = urllib.request.urlopen(url)
"""
:type:http.client.HTTPResponse
"""
response.r
PyCharm无代码提示解决_第12张图片

最后:虽然给出了3中解决方案,但是都需要人为增加代码,没有找到更好的方法,如果朋友们无需增加代码的方案,可以留言告知下,感谢!

你可能感兴趣的:(python,pycharm,python,代码提示,pycharm智能提示)