您好,登录后才能下订单哦!
这篇文章主要讲解了pycharm如何实现对代码做静态检查,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。
对于下面这种情况,java c这些提前编译的语言,不给你运行机会就立马报错了,但对于动态语言运行之后才能报错,用运行的方法来检查代码错误是在是太坑了,这是py对比静态语言的巨大劣势,尤其是代码文件多行数较大时候,劣势有些明显。
#coding=utf8 import time class A(object): def __init__(self): self.name = 'xiaomin' def fun(): for i in range(100): time.sleep(10) print i if i == 70: print bbbb fun() time.sleep(600) print A().age
这段代码有错误,第13行本地和全局中都找不到bbbb。
第17行A类的实例没有age这个属性,强行使用会在运行时候报错。
但这个报错有很大缺陷,第13行报错需要运行后等到第700秒才报错,如果不调用fun函数,第17行需要等600秒才报错,这里的sleep用来泛指运行其他代码功能消耗的时间。
尤其是代码文件多,嵌套判断多,不能很快的报出一些明显错误,实在是不太好,如果是不小一在编辑器哪一段按了几个键盘多打了几个字母,还要等运行才报错,那是十分坑的。这可能是国内大的项目,用py语言很少的原因之一。
还好,有一些工具flake8,pylint检查,如果使用pycharm,那就用自带的inspect code功能来检查。
最好设置一个自定义按键。
这样就能找到这个bbbb和age属性错误了。其余的是pep8语法,2to3的过时写法检查
这样的好处是不需要等运行10分钟后才发现错误,而是很快就发现错误,减少一些测试时间,不然老是改来改去运行,很糟糕。
反对极端面向过程编程思维方式,喜欢面向对象和设计模式的解读,喜欢对比极端面向过程编程和oop编程消耗代码代码行数的区别和原因。致力于使用oop和36种设计模式写出最高可复用的框架级代码和使用最少的代码行数完成任务,致力于使用oop和设计模式来使部分代码减少90%行,使绝大部分py文件最低减少50%-80%行的写法。
看完上述内容,是不是对pycharm如何实现对代码做静态检查有进一步的了解,如果还想学习更多内容,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。