解决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写的ARP攻击代码实例
Jun 04 Python
Python切片知识解析
Mar 06 Python
利用Python爬取可用的代理IP
Aug 18 Python
Python实现曲线点抽稀算法的示例
Oct 12 Python
python实现自动发送邮件发送多人、群发、多附件的示例
Jan 23 Python
Python3非对称加密算法RSA实例详解
Dec 06 Python
Python实现某论坛自动签到功能
Aug 20 Python
python GUI库图形界面开发之PyQt5图片显示控件QPixmap详细使用方法与实例
Feb 27 Python
Django调用支付宝接口代码实例详解
Apr 04 Python
Pytest框架之fixture的详细使用教程
Apr 07 Python
详解用selenium来下载小姐姐图片并保存
Jan 26 Python
pytorch 运行一段时间后出现GPU OOM的问题
Jun 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
PHP面向对象编程之深入理解方法重载与方法覆盖(多态)
2015/12/24 PHP
php使用fputcsv实现大数据的导出操作详解
2020/02/27 PHP
关于Ext中form移除textfield方法:hide(),setVisible(false),remove()
2010/12/02 Javascript
jquery选择器使用详解
2014/04/08 Javascript
关闭时刷新父窗口两种方法
2014/05/07 Javascript
JavaScript使用function定义对象并调用的方法
2015/03/23 Javascript
JS获取网页图片name属性的方法
2015/04/01 Javascript
js获取当前日期时间及其它操作汇总
2015/04/17 Javascript
javascript解决IE6下hover问题的方法
2015/07/28 Javascript
详解JavaScript中的属性和特性
2016/12/08 Javascript
Angular4实现鼠标悬停3d倾斜效果
2017/10/25 Javascript
json前后端数据交互相关代码
2018/09/19 Javascript
微信小程序学习笔记之文件上传、下载操作图文详解
2019/03/29 Javascript
[04:23]DOTA2上海特锦赛小组赛第一日 TOP10精彩集锦
2016/02/27 DOTA
[01:05:30]VP vs TNC 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
python搭建简易服务器分析与实现
2012/12/15 Python
浅谈python for循环的巧妙运用(迭代、列表生成式)
2017/09/26 Python
Python中pandas dataframe删除一行或一列:drop函数详解
2018/07/03 Python
python判断输入日期为第几天的实例
2018/11/13 Python
python交易记录整合交易类详解
2019/07/03 Python
pandas删除行删除列增加行增加列的实现
2019/07/06 Python
kali中python版本的切换方法
2019/07/11 Python
对tensorflow中的strides参数使用详解
2020/01/04 Python
Python基于Socket实现简易多人聊天室的示例代码
2020/11/29 Python
聊聊python在linux下与windows下导入模块的区别说明
2021/03/03 Python
HTML5 Canvas如何实现纹理填充与描边(Fill And Stroke)
2013/07/15 HTML / CSS
草莓巧克力:Shari’s Berries
2017/02/07 全球购物
KEEN美国官网:美国人气户外休闲鞋品牌
2021/03/09 全球购物
十佳大学生村官事迹
2014/01/09 职场文书
给校长的建议书600字
2014/05/15 职场文书
另类冲刺标语
2014/06/24 职场文书
公司演讲稿开场白
2014/08/25 职场文书
2015年入党积极分子评语
2015/03/26 职场文书
人事行政助理岗位职责
2015/04/11 职场文书
oracle数据库去除重复数据
2022/05/20 Oracle
TypeScript 内置高级类型编程示例
2022/09/23 Javascript