解决某些情况编辑器无法自动补全 Python 方法的问题

(以 Intellij IDEA / PyChram 为例)
  Python 作为一个自动推定类型的语言,虽然是强类型,但是很多时候,变量的类型推断是在执行中进行的,这种模式一定程度上方便了代码的编写,程序员不需要在每次声明变量时还去考虑繁琐的类型。
  不过,对于 IDE 编辑器的自动补全机制来说,这未必是一个好事,因为某种意义上来说,自动补全是要根据变量类型,展示出可以使用的方法的。
  正常情况下,编译器会根据上下文智能推断变量的类型,但是有些情况下,比如:

这种情况主要出现在类库中

  这种情况经常出现在类库中,先不管依赖自动补全是不是一个好习惯,在面对一个新库的时候,如果没有补全只能查文档(很多还是英文的),确实挺麻烦的,而且很多方法名只要懂一些简单的英文单词就能看懂,很多时候直接从补全的内容里面找想要的方法,比查文档方便多了。
  那么怎么解决这一问题呢,核心问题是:“编辑器不知道变量类型 ”。还好 Python3 给出了一种新特性——指定变量类型。它的写法如下:
指定变量类型的写法

实践例子:
“不指定变量类型时”

“指定变量类型后”

  而一般的编辑器,只要你有该类型的一个方法就可以找到他的类型:
(如 IDEA/PyCharm):
“按住 Ctrl ,鼠标指针悬停在方法上就可以看到所属类”

  也就是说,你最多只需要查一次文档即可
  这样编辑器就能实行自动补全了,当然,这个 指定变量类型 的新特性本身并不是为了让编辑器自动补全,而是为了让程序员编写方法时确定传入的参数的数据类型是否是自己想要的,相当于类型检查功能。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,975评论 6 342
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,027评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,786评论 25 709
  • 整整一周年,在这一年里思想转变是有的,自己也能感受得到,不过改变大不大我无法评估,如果我想要对自己认识深一些,需要...
    麦风玄阅读 247评论 0 2
  • 男生寝室有着男生的专属话题,那就是对异性女孩的评头论足。 那是一个充满魔力而又热血沸腾的话题,男孩们会抓住每一个机...
    幻梦邪魂阅读 496评论 0 3