syntax checker in python
Carl Banks
pavlovevidence at gmail.com
Sat Aug 8 03:30:06 EDT 2009
On Aug 7, 1:39 pm, horos11 <horo... at gmail.com> wrote:
> ps - I just realized that it isn't enough to do:
>
> python -c 'import /path/to/script'
>
> since that actually executes any statement inside of the script
> (wheras all I want to do is check syntax)
>
> So - let me reprhase that - exactly how can you do a syntax check in
> python? Something like perl's -c:
>
> perl -c script_name.p
A quick and dirty way would be to use the py_compile:
python -m py_compile /path/to/script
Warning: this simply appends "c" to the filename and writes out the
compiled file (kind of dumb behavior, actually), so if it's a script
you probably want to delete it afterwards:
python -m py_compile /path/to/script ; rm -f /path/to/scriptc
A little better might be to write a little Python helper script that
directs output to nowhere (something like this, feel free to
embellish):
import py_compile
py_compile.compile(sys.argv[1],'/dev/null',None,False)
Carl Banks
More information about the Python-list
mailing list