Python中的Perl的BEGIN{}块
我有一段Python代码,里面用了“with”这个关键词(在2.6版本中新增的),我想检查一下我的解释器版本是不是至少2.6,所以我用了下面的代码:
import sys
if sys.version < '2.6':
raise Exception( "python 2.6 required" )
但是,2.4版本的解释器在遇到“with”这个关键词时就出错了(在脚本的后面部分),因为它不认识这个语法,而这个错误发生在它检查我版本的代码之前。
在Python中,有没有类似于Perl的BEGIN{}块的东西呢?
2 个回答
3
也许有人有更好的答案,但我首先想到的是可以写一个单独的脚本来进行检查,然后在检查通过后再导入“真正的”脚本。因为在Python中,只有在导入的时候才会检查语法。
import sys
if sys.version < '2.6':
raise Exception( "python 2.6 required" )
import myscript # runs myscript
4