Skip to main content
 首页 » 编程设计

python之在 Python 中检查字符串的 Python 语法

2025年05月04日27www_RR

假设我有一个字符串

s=""" 
 
print 'hi' 
    print 'hi' 
print 3333/0 
""" 

有没有模块或方法可以帮助我检查这个字符串的语法?

我希望输出是这样的:

第2行,缩进 第 3 行,除以零

我听说过 pyFlakes、pyChecker 和 pyLint,但它们检查的是文件,而不是字符串。

请您参考如下方法:

compile() 函数会告诉您有关编译时错误的信息:

try: 
    compile(s, "bogusfile.py", "exec") 
except Exception as e: 
    print "Problem: %s" % e 

但请记住:一个错误将阻止报告其他错误,并且您的一些错误 (ZeroDivision) 是运行时错误,而不是编译器检测到的错误。