Как я могу удалить комментарии и строки документа из исходного кода Python? [закрыто]

StackOverflow https://stackoverflow.com/questions/1621521

Вопрос

Есть ли программа, которую я могу запустить так:

py2py.py < orig.py > smaller.py

Где orig.py содержит исходный код Python с комментариями и строками документов, а файл small.py содержит идентичный исполняемый исходный код, но без комментариев и строк документации?

Код, который изначально выглядел так:

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

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

Тогда выглядело бы так:

def foo(it):
    print it
Это было полезно?

Решение

Этот минификатор Python выглядит так, как будто он делает то, что вам нужно.

Другие советы

Я рекомендую minipy . Самая веская причина в том, что он правильно анализирует дерево абстрактного синтаксиса исходного кода, поэтому минимизированный код гораздо точнее. Я обнаружил, что более известный pyminifier имеет тенденцию генерировать код с неопределенными ошибками символов, неправильно истолкованными кортежи и т. д. Я также получил на несколько процентов лучшие результаты сжатия с помощью minipy. Небольшое преимущество minipy состоит в том, что он меньше половины размера кода pyminifier. Также проще управлять и интегрировать в конвейер сборки, потому что это отдельный автономный файл Python.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top