如何从python源代码中删除注释和doc字符串?

时间:2009-10-25 17:43:25

标签: python comments code-formatting

是否有我可以这样运行的程序:

py2py.py < orig.py > smaller.py

其中orig.py包含带有注释和doc字符串的python源代码,而small.py包含相同的,可运行的源代码但没有注释和doc字符串?

最初看起来像这样的代码:

#/usr/bin/python
"""Do something
blah blah...
"""

# Beware the frubnitz!
def foo(it):
    """Foo it!"""
    print it  # hmm?

然后会是这样的:

def foo(it):
    print it

2 个答案:

答案 0 :(得分:8)

This Python minifier看起来就像你需要的那样。

答案 1 :(得分:2)

我建议minipy。最令人信服的原因是它对源代码抽象语法树进行了适当的分析,因此缩小的代码更加准确。我发现更为人熟知的pyminifier往往会生成带有未定义符号错误,错误解释元组等的代码。我还得到了一些更好的压缩结果与minipy。 minipy的一个小好处是它不到pyminifier代码大小的一半。它也更容易管理和集成到构建管道中,因为它是一个独立的python文件。