简介

Pylint 是一个 Python 代码分析工具,它分析 Python 代码中的错误,查找不符合代码风格标准(Pylint 默认使用的代码风格是 PEP 8)和有潜在问题的代码。

  • Pylint 是一个 Python 工具,除了平常代码分析工具的作用之外,它提供了更多的功能:如检查一行代码的长度,变量名是否符合命名标准,一个声明过的接口是否被真正实现等等。
  • Pylint 的一个很大的好处是它的高可配置性,高可定制性,并且可以很容易写小插件来添加功能。
  • 如果运行两次 Pylint,它会同时显示出当前和上次的运行结果,从而可以看出代码质量是否得到了改进。
  • 目前在 eclipse 的 pydev 插件中也集成了 Pylint。

目前最好的介绍 pylint 的文章应该是这篇《如何使用 Pylint 来规范 Python 代码风格 》(上面那段文字的来源),但里面讲到的安装方式有点过时了,而且在 windows 下安装的时候,有点小状况:使用 Easy_install 安装完毕之后报告成功安装,但执行时出错:

  1. Using d:/python26/lib/site-packages/unittest2-0.5.1-py2.6.egg
  2. Finished processing dependencies for pylint==0.22.0
  3. D:/pylint-0.22.0>pylint
  4. python: can't open file 'D:/Python26/Scripts/pylint': [Errno 2] No such file or
  5. directory

后来我解决了这个问题,在这里备份一下:

Windows 下的安装

  1. 确保 Python 的安装目录和相应的 Scripts 目录已经在环境变量 path 中
  2. 先到 http://pypi.python.org/pypi/pylint下载安装包,然后解压到某目录,这里假定在 D:/pylint-0.22.0
  3. 进入 D:/pylint-0.22.0 目录,然后在命令行执行以下指令:python setup.py install
  4. 在上一步会出错,但会报告成已经成功安装,这时候需要打开 D:/pylint-0.22.0/bin 目录,然后把那里的所有文件拷贝到 Python 的 Scripts 目录下(如:D:/Python26/Scripts)
  5. 在命令行尝试执行 pylint,如果输出帮助,则表示已经安装成功

与 PyDev 集成

PyDev 的安装略过...以下是集成配置的过程:

    1. 用 pylint, 写好代码Window -> preferences -> Pydev -> Pylint,选中 "Use pylint?"
    2. 在 Location of pylint 处输入你安装的 lint.py 的地址,如:D:/pylint-0.22.0/lint.py
    3. 在下方的 Arguments to pass to pylint 处输入 --rcfile="E:/svn/misc/pylint.conf",以使用自己的 pylintrc 配置
    4. Project -> Properties -> PyDev?-PYTHONPATH 增添项目的源文件目录到"Project Source Folders"。

pylint window下安装与使用的更多相关文章

  1. window下安装 node ,并搭建 vue 项目

    uname -a  命令查看到我的Linux系统位数是64位(备注:x86_64表示64位系统, i686 i386表示32位系统) window下安装node 1.在官网上选择对应的位数的msi安装 ...

  2. window下安装cross-env解决NODE_ENV ts-node 不是内部或外部命令,也不是可运行的程序 或批处理文件 问题

    window下安装cross-env解决NODE_ENV ts-node 不是内部或外部命令,也不是可运行的程序 或批处理文件 问题 在git bash上启动无法进行调试,采用cross-env后可以 ...

  3. Window 下安装

    Window 下安装 下载地址:https://github.com/MSOpenTech/redis/releases Redis 支持 32 位和 64 位.这个需要根据你系统平台的实际情况选择, ...

  4. Window 下安装 Redis

    Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. 一.Window 下安装 redis https://github.com/MicrosoftArchive/r ...

  5. window下安装redis报错: creating server tcp listening socket 127.0.0.1:6379: bind No error

    window下安装redis报错: creating server tcp listening socket 127.0.0.1:6379: bind No error 解决: 如果没有配置环境,在安 ...

  6. window下安装rsyncServer

    window下安装rsyncServer---------------------------------1. 解压cwRsyncServer_4.0.5_Installer.zip,安装. 2. 复 ...

  7. nginx(Window下安装 & 配置文件参数说明 & 实例)

    一.为什么需要对Tomcat服务器做负载均衡:  Tomcat服务器作为一个Web服务器,其并发数在300-500之间,如果有超过500的并发数便会出现Tomcat不能响应新的请求的情况,严重影响网站 ...

  8. window下安装php7的memcache扩展

    安装memcache:http://www.runoob.com/memcached/memcached-connection.html1.4.4 c:\memcached\memcached.exe ...

  9. window下安装composer步骤(linux待研究)

    window下安装composer步骤--注意(安装完之后需要重启电脑才能生效) 转发:https://blog.csdn.net/wengedexiaozao/article/details/798 ...

随机推荐

  1. 织梦按栏目id读取banner图

    <div class="pic"> <div class="banner"> {dede:type} <div><a ...

  2. Selenium学习

    Web测试:Selenium使用 2008-12-23 10:49 by 敏捷的水, 17940 阅读, 16 评论, 收藏, 编辑 本文包含的主要内容: Selenium简介 我应该使用哪一个Sel ...

  3. 贪心 Codeforces Round #301 (Div. 2) A. Combination Lock

    题目传送门 /* 贪心水题:累加到目标数字的距离,两头找取最小值 */ #include <cstdio> #include <iostream> #include <a ...

  4. CSGrandeur的WebGL学习——WebGL教程

    在线查看:http://csgrandeur.gitbooks.io/webgl-learn/content/ 离线mobi:http://files.cnblogs.com/files/CSGran ...

  5. BZOJ4399 : 魔法少女LJJ

    将所有权值离散化,建立权值线段树,维护区间内数字个数以及对数的和,用于比较乘积大小. 对于每个连通块维护一棵权值线段树,合并时用线段树合并. 对于操作3和4,暴力删除所有不合法节点,然后一并修改后插入 ...

  6. const放在函数前和放在函数后

    template < class T, class container = vector<T> > class MyClass{ private: T value; publi ...

  7. ECMAScript继承

    继承的定义 ECMAScript 实现继承可以从父类入手,所有开发者定义的类都可作为父类,出于安全考虑,本地类和宿主类不能作为父类,因为容易收到恶意攻击 创建只是用于给子类提供通用函数的父类被看作抽象 ...

  8. javascript第一弹——对象

    一. 什么是对象 对象是包含一组变量(称为属性)和函数(称为方法)的集合的实例. javascript中所有事物都是对象 javascript有很多内建对象 javascript允许自定义对象 对象只 ...

  9. MySQL索引分析与优化

    1.MySQL能够在name的索引中查找“Mike”值,然后直接转到数据文件中相应的行,准确地返回该行的 peopleid(999).在这个过程中,MySQL只需处理一个行就可以返回结果.如果没有“n ...

  10. php 数组操作

    <?php $vegetables[0] = "corn"; $vegetables[1] = "broccoli"; $vegetables[2] = ...