zoukankan      html  css  js  c++  java
  • Python之静态语法检查

      Python是一门动态语言。在给python传参数的时候并没有严格的类型限制。写python程序的时候,发现错误经常只能在执行的时候发现。有一些错误由于隐藏的比较深,只有特定逻辑才会触发,往往导致需要花很多时间才能将语法错误慢慢排查出来。其实有一些错误是很明显的,假如能在写程序的时候发现这些错误,就能提高工作效率。最近我发现,可以用pyflakes这个程序对python语法进行语法检查,这样可以尽量早的发现错误。pyflakes有三种使用方法,第一种是当作命令行工具使用;第二种可以作为vim的插件,在vim编辑器中使用,实现所见即所得;第三种是可以在emacs中使用。

      Pyflakes的下载地址戳这里

    • 命令行用法:
      pyflakes *.py
    • vim编辑器的配置,首先vim需要支持python,vim是否支持python按照如下方式检查:
      vim
      #进入vim编辑器界面之后,在命令行模式下输入如下命令
      :version

      结果如下:

      VIM - Vi IMproved 7.3 (2010 Aug 15, compiled May  4 2012 04:09:27)
      Included patches: 1-429
      Modified by pkg-vim-maintainers@lists.alioth.debian.org
      Compiled by buildd@
      Huge version without GUI.  Features included (+) or not (-):
      +arabic +autocmd -balloon_eval -browse ++builtin_terms +byte_offset +cindent
      -clientserver -clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments
      +conceal +cryptv +cscope +cursorbind +cursorshape +dialog_con +diff +digraphs
      -dnd -ebcdic +emacs_tags +eval +ex_extra +extra_search +farsi +file_in_path
      +find_in_path +float +folding -footer +fork() +gettext -hangul_input +iconv
      +insert_expand +jumplist +keymap +langmap +libcall +linebreak +lispindent
      +listcmds +localmap -lua +menu +mksession +modify_fname +mouse -mouseshape
      +mouse_dec +mouse_gpm -mouse_jsbterm +mouse_netterm -mouse_sysmouse
      +mouse_xterm +mouse_urxvt +multi_byte +multi_lang -mzscheme +netbeans_intg
      +path_extra -perl +persistent_undo +postscript +printer +profile +python
      -python3 +quickfix +reltime +rightleft -ruby +scrollbind +signs +smartindent
      -sniff +startuptime +statusline -sun_workshop +syntax +tag_binary
      +tag_old_static -tag_any_white -tcl +terminfo +termresponse +textobjects +title
       -toolbar +user_commands +vertsplit +virtualedit +visual +visualextra +viminfo
      +vreplace +wildignore +wildmenu +windows +writebackup -X11 -xfontset -xim -xsmp
       -xterm_clipboard -xterm_save

      其中,+号代表支持,我的vim支持python,不支持的小伙伴们升级你们的vim吧!好,继续,下面我们对vim进行配置,使其支持pyflakes。首先,下载pyflakes.vim,将其解压到vim配置文件夹,我是直接配置到/etc/vim/文件夹下面,修改vim的配置,打开vimrc,配置如下选项:

       40 if has("autocmd")
       41   filetype plugin indent on
       42 endif

      好了,万事俱备,测试一下吧!测试结果如下:

    • 配置成功,emacs的配置不再详细介绍,感兴趣的小伙伴自己去google!感谢大家的阅读,希望能帮到大家!

  • 相关阅读:
    我的IT之路2011(二)
    用三层架构画类图的基本结构
    计算机教育学术交流会
    我的IT之路2011(一)
    Canvas中元素的定位
    对话框中的数据绑定(WPF)
    {Binding}详释 (WPF)
    Polyline的问题
    How do I sort groups of data items?(WPF)
    Excel Services OverView系列--3使用Excel Web Services操作Excel工作薄
  • 原文地址:https://www.cnblogs.com/berlin-sun/p/pyflakes.html
Copyright © 2011-2022 走看看