解决pycharm不能自动补全第三方库的函数和属性问题


Posted in Python onMarch 12, 2020

因为python是动态语言,变量类型是可变的,所以不管pycharm还是sublime都做不到准确的类型推断。

一个比较取巧的做法是assert

assert isinstance(a, A_type)
a.<TAB> # 可以补全

补充知识:pycharm 第三方库函数无代码提示解决方案

问题描述

呃呃呃,想使用urllib库进行HTTP 调用,然后发现有些地方没有代码提示。。。这就很难受了,我根本不清楚API的,你不给我一点提示就过分了呀!!!

from urllib import request


def demo():
  s = request.urlopen('http://www.baidu.com')
  // 没有提示。。。
  s._


if __name__ == '__main__':
  demo()

解决方案

经过一些资料查阅,发现了这些解决方法,仅供参考:

使用isinstance 指定

from urllib import request
from http.client import HTTPResponse


def demo():
  s = request.urlopen('http://www.baidu.com')
  assert isinstance(s, HTTPResponse)
  // 这就有提示了
  s.read()


if __name__ == '__main__':
  demo()

使用类型注解

from urllib import request
from http.client import HTTPResponse


def demo():
  s = request.urlopen('http://www.baidu.com') # type: HTTPResponse
  // 这样也OK!
  s.read()


if __name__ == '__main__':
  demo()

指定类型

from urllib import request
from http.client import HTTPResponse


def demo():
  s = request.urlopen('http://www.baidu.com')
  """:type:HTTPResponse"""
  // 这样也是OK滴!
  s.read()


if __name__ == '__main__':
  demo()

以上这篇解决pycharm不能自动补全第三方库的函数和属性问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python读取csv文件示例(python操作csv)
Mar 11 Python
Python中使用第三方库xlrd来读取Excel示例
Apr 05 Python
python3使用requests模块爬取页面内容的实战演练
Sep 25 Python
Python线性方程组求解运算示例
Jan 17 Python
Python实现的将文件每一列写入列表功能示例【测试可用】
Mar 19 Python
pycharm 主题theme设置调整仿sublime的方法
May 23 Python
python实现定时发送qq消息
Jan 18 Python
python实现抖音点赞功能
Apr 07 Python
pytorch-神经网络拟合曲线实例
Jan 15 Python
pyinstaller打包找不到文件的问题解决
Apr 15 Python
利用pipenv和pyenv管理多个相互独立的Python虚拟开发环境
Nov 01 Python
Django项目在pycharm新建的步骤方法
Mar 02 Python
Matplotlib使用Cursor实现UI定位的示例代码
Mar 12 #Python
PyCharm中Matplotlib绘图不能显示UI效果的问题解决
Mar 12 #Python
pycharm实现在子类中添加一个父类没有的属性
Mar 12 #Python
Python3 获取文件属性的方式(时间、大小等)
Mar 12 #Python
Python获取对象属性的几种方式小结
Mar 12 #Python
深入浅析Python 命令行模块 Click
Mar 11 #Python
python字典和json.dumps()的遇到的坑分析
Mar 11 #Python
You might like
Yii2单元测试用法示例
2016/11/12 PHP
非常漂亮的JS代码经典广告
2007/10/21 Javascript
JavaScript 动态改变图片大小
2009/06/11 Javascript
jquery toolbar与网页浮动工具条具体实现代码
2014/01/12 Javascript
javascript的动态加载、缓存、更新以及复用(一)
2014/06/09 Javascript
javascript算法题:求任意一个1-9位不重复的N位数在该组合中的大小排列序号
2015/04/01 Javascript
javascript实现的字符串与十六进制表示字符串相互转换方法
2015/07/17 Javascript
JS验证邮件地址格式方法小结
2015/12/01 Javascript
整理Javascript事件响应学习笔记
2015/12/02 Javascript
TinyMCE汉化及本地上传图片功能实例详解
2016/05/31 Javascript
Node.js中npm常用命令大全
2016/06/09 Javascript
jQuery基于toggle实现click触发DIV的显示与隐藏问题分析
2016/06/12 Javascript
javascript中的 object 和 function小结
2016/08/14 Javascript
使用prop解决一个checkbox选中后再次选中失效的问题
2017/07/05 Javascript
Bootstrap Fileinput 4.4.7文件上传实例详解
2018/07/25 Javascript
react高阶组件添加和删除props
2019/04/26 Javascript
vue 搭建后台系统模块化开发详解
2019/05/01 Javascript
vue-cli和v-charts实现可视化图表过程解析
2019/10/08 Javascript
详解python进行mp3格式判断
2016/12/23 Python
python发送邮件实例分享
2017/07/28 Python
Python命令行解析模块详解
2018/02/01 Python
python得到单词模式的示例
2018/10/15 Python
更新修改后的Python模块方法
2019/03/03 Python
python itchat给指定联系人发消息的方法
2019/06/11 Python
python实现将中文日期转换为数字日期
2020/07/14 Python
python使用matplotlib的savefig保存时图片保存不完整的问题
2021/01/08 Python
CSS3属性box-sizing使用指南
2014/12/09 HTML / CSS
迪梵英国官方网站:Darphin英国
2017/12/06 全球购物
Ibatis中如何提高SQL Map的性能
2013/05/11 面试题
2014年保管员工作总结
2014/11/18 职场文书
财务总监岗位职责
2015/02/03 职场文书
云冈石窟导游词
2015/02/04 职场文书
2016母亲节感恩话语
2015/12/09 职场文书
《刺客之王:C罗全景传记》:时代从来不会亏待手艺人
2019/11/28 职场文书
DjangoRestFramework 使用 simpleJWT 登陆认证完整记录
2021/06/22 Python
nginx刷新页面出现404解决方案(亲测有效)
2022/03/18 Servers