¿Cómo puedo eliminar comentarios y cadenas de documentos del código fuente de Python? [cerrado]

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

Pregunta

¿Hay un programa que pueda ejecutar de esta manera?

py2py.py < orig.py > smaller.py

¿Dónde orig.py contiene el código fuente de Python con comentarios y cadenas de documentación, y small.py contiene el código fuente idéntico y ejecutable pero sin los comentarios y las cadenas de documentación?

Código que originalmente se veía así:

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

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

Entonces se vería así:

def foo(it):
    print it
¿Fue útil?

Solución

Este minificador de Python parece que hace lo que necesitas.

Otros consejos

Recomiendo minipy . La razón más convincente es que realiza un análisis adecuado del árbol de sintaxis abstracta de código fuente, por lo que el código minificado es mucho más preciso. Descubrí que el más conocido pyminifier tiende a generar código con errores de símbolos indefinidos, mal interpretados tuplas, etc. También obtuve unos pocos mejores resultados de compresión con minipy. Un beneficio menor de minipy es que es menos de la mitad del tamaño del código de pyminifier. También es más fácil de administrar e integrar en una canalización de compilación porque es un único archivo de Python independiente.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top