如何进行PYTHON语法检查

Python010

如何进行PYTHON语法检查,第1张

语法验证简单一些,编译一遍就可以了。

有py_compile,

compiler等等.

try:

compile(word,'<script>','exec')

except:

print

'error'

pyflakes有三种使用方法,第一种是当作命令行工具使用。第二种可以作为vim的插件,在vim编辑器中使用,实现所见即所得。第三种是可以在emacs中使用。

pyflakes作为命令行工具

安装pyflakes这个程序很简单。可以在pyflakes的官网这个网站进行下载:

http://pypi.python.org/pypi/pyflakes

这是一个命令行工具。在linux下,可以直接运行 ‘pyflakes 文件名’ 对文件进行语法检查。

在vim编辑器中使用pyflakes

首先要确保vim支持python2.5以上版本,如果不确定是否支持,请在vim中运行命令。

<!-- lang: shell -->

:version

结果例如:

+代表支持的功能,-代表不支持的功能。由于上图所示的vim不支持python, 所以需要重新编译vim。

要编译支持python2.5以上版本的vim, 第一要具有python2.5以上版本。第二要有vim源码,./configure

–with-features=huge –enable-pythoninterp 然后再运行make make install编译并且安装。

确定vim支持python2.5以上版本的方法为,在vim中运行“:python import sysprint sys.version”

在vim支持了Python之后,直接下载[pyflakes.vim]

3 http://www.vim.org/scripts/script.php?script_id=2441

将下载的压缩包,放在$HOME/.vim/下解压。在$HOME/.vim/ftplugin/python/下会增加一个pyflakes目录和pyflakes.vim文件。

然后在.vimrc文件中增加”filetype plugin indent on“。即可实现在vim编辑器中检查python语法的功能。

emacs支持

emacs可以通过flymake支持pyflakes。首先要安装命令行模式的pyflakes, 然后将下面的代码加入$HOME/.emacs

<!-- lang: cpp -->

(autoload 'flymake-find-file-hook "flymake" "" t)

(add-hook 'find-file-hook 'flymake-find-file-hook)

(setq flymake-gui-warnings-enabled nil)

(setq flymake-log-level 0)

(when (load "flymake" t)

(

defun flymake-pycheckers-init ()

(

let*

(

(

temp-file

(

flymake-init-create-temp-buffer-copy

'flymake-create-temp-inplace

)

)

(

local-file

(

file-relative-name

temp-file

(

file-name-directory buffer-file-name

)

)

)

)

(

list "pyflakes" (list local-file)

)

)

(add-to-list 'flymake-allowed-file-name-masks

'("\\.py\\'" flymake-pycheckers-init))

)

)

然后在emacs界面中可以显示python语法错误的地方。