使用pycharm,追求最优的代码。
1、最近追求的是代码0警告,没有任何提示。
怎么追求这样的目标,不需要再去单独使用pylint和flake8这些玩意,只需要看pycharm右边编辑区的竖向滚动条的黄色就可以了。
2、 比较糟糕的就是这样的代码了,不仅是有黄色的提示,更恐怖的是黄色连成实体柱状了,这么多警告真的很恐怖,我接手修改这样的代码时候心里都凉了。

或者这样更恐怖的才200多行就那么多黄色警告

最好的代码是这样,编辑区的右边竖向滚动条没有黄色。

pycahrm的右边就是指导方向,我最近写的时候,是尽量追求0个waning。
3、经常在意右边的黄色个数,不仅可以优化自己的代码pep8风格,有的warning是可以加强对python语言的特性掌握,有的wanings是告诉用户怎么写可以避免运行时的低级错误。
上面那个黄色很多的代码是可以运行的,但就是想一个豆腐渣建筑一样,外观丑陋,而且不稳固,说不定搞什么装修时候或者楼上放重物时候 ,房子就垮了,只能保证目前是可以用的。部分风格空格问题可以用ctrl alt shift L 一键优化的,部分是写得不好,编辑器不可能代替我们直接修改代码文字。
4、一些能加强对python理解的wanings例如:
1)、你写了一个类,类里面使用了实例方法,但方法里面却没有访问任何实例属性和方法,会有黄色提示,那么就要考虑使用staticmethod装饰器了,这是对python的方法什么时候用self,什么时候用calssmethod和staticmethod的理解。
2)、写了一个类,突然在一个非__init__的方法中,冒出self.xx = ‘hello',这是不应该的,即使在实例初始化时候,不确定xx属性是什么值,也要在__init__方法中先写个 self.xx = None,这样一是防止访问出错,二是能让人一下子就看到有哪些实例属性,毕竟python没有学java那样在类名之下去声明有哪些属性和静态属性,确保所有实例变量都必须是在__init__中首次出现是很有必要的。
3)、带if分支的代码,可能压根从没满足过任何一个if分支没有对a赋过值,下面突然print(a),这样很可能造成致命错误。
5、可以抑制黄色警告的办法有,在pycahrm中配置哪些不规范的东西不提醒你,这是永久的,但我不用这种自欺欺人的,别人的pycahrm配置和你不同,打开这个代码照样一堆警告。
临时的抑制黄色警告 可以在产生警告的那一行使用 # NOQA
使用pycharm,追求最优的代码。的更多相关文章
- Spark性能调优之代码方面的优化
Spark性能调优之代码方面的优化 1.避免创建重复的RDD 对性能没有问题,但会造成代码混乱 2.尽可能复用同一个RDD,减少产生RDD的个数 3.对多次使用的RDD进行持久化(ca ...
- PyCharm实现高效远程调试代码
PyCharm实现高效远程调试代码 (薛刚强) 为方便Python代码学习和项目开发,目前选择专业的 IDE 开发工具 ,如 PyCham.针对个人使用的技巧做个笔记,分享给大家,有描述 ...
- 【Spark篇】---Spark调优之代码调优,数据本地化调优,内存调优,SparkShuffle调优,Executor的堆外内存调优
一.前述 Spark中调优大致分为以下几种 ,代码调优,数据本地化,内存调优,SparkShuffle调优,调节Executor的堆外内存. 二.具体 1.代码调优 1.避免创建重复的RDD,尽 ...
- 22 pycharm如何将一段代码同时向左缩进一个tab键
在使用pycharm时,经常会需要多行代码同时缩进.左移,pycharm提供了快捷方式 1.pycharm使多行代码同时缩进 鼠标选中多行代码后,按下Tab键,一次缩进四个字符 2.pycharm使多 ...
- PyCharm 中使用 Pylint 控制代码质量
1) Pylint安装 - Windows下: 直接在 cmd 下使用 pip install pylint 即可(如果 pip 不可用,首先安装最新版 Python,会默认安装 pip,或者找到 p ...
- pyCharm添加自己的快捷代码
1.首先打开pyCharm 2.打开Settings 3.输入live点击打开 Templates 4.选中python点击"+"号 5.选择Live Template 6.以打开 ...
- ubuntu16系统中pycharm下使用git将代码提交到github仓库
1 在系统中安装git,在terminal中输入以下命令 sudo apt-get update sudo apt-get install git 2 对git进行配置,在terminal中输入以下命 ...
- Pycharm配置autopep8:自动调整代码为PEP8风格
关于PEP 8 PEP 8,Style Guide for Python Code,是Python官方推出编码约定,主要是为了保证 Python 编码的风格一致,提高代码的可读性. 官网地址:http ...
- PyCharm 2018实现远程调试代码
pycharm是一个非常强大的python开发工具,现在很多代码最终在线上跑的环境都是linux,而开发环境可能还是windows下开发,这就需要经常在linux上进行调试,或者在linux对代码进行 ...
随机推荐
- [转载]番茄时间管理法(Pomodoro Technique):一个番茄是如何让你工作更有效率的
如果你经常读一些关于提高工作效率或时间管理类的博客,一定听说过番茄时间管理法(Pomodoro Technique).这是一种极好的帮助你集中注意力.获得更高工作效率的方法. 基本上,它的实施方法是这 ...
- UEFI Protocol
MEM_INFO_PROTOCOL MEM_INFO_PROTOCOL; EFI_LOADED_IMAGE_PROTOCOL EFI_DEVICE_PATH_PROTOCOL EFI_DRIVER_B ...
- 切换tab页
//切换Tab页 $('#tt').tabs({ border:false, onSelect:function(title){ ...
- mysql小题趣事
题一 答案: case when +条件 +then 显示什么 +else+显示另外什么+end
- 怎么用一个ppt介绍一个项目
- 第三百七十节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索结果分页
第三百七十节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索结果分页 逻辑处理函数 计算搜索耗时 在开始搜索前:start_time ...
- e830. 向JTabbedPane中加入一个卡片
This example demonstrates various ways to add a tab to a tabbed pane. // Create a tabbed pane JTabbe ...
- (转)libhybris及EGL Platform-在Glibc生态中重用Android的驱动
原文地址:http://blog.csdn.net/jinzhuojun/article/details/41412587 libhybris主要作用是为了解决libc库的兼容问题,目的是为了在基于G ...
- memcache -- 使用场景
memcache:分布式缓存机制 使用场景: 1.对数据的存储要求不高,就算丢失也关系不大(因为memcache是非持久化存储) 2.不适合单机使用,即不适合将memcache和数据库等都放到同一台机 ...
- ProGuard代码混淆详细攻略
转载请标明出处:http://blog.csdn.net/shensky711/article/details/52770993 本文出自: [HansChen的博客] ProGuard简介和工作流程 ...