Ejecutar función desde la línea de comando

Resuelto Steven asked hace 14 años • 19 respuestas

Tengo este código:

def hello():
    return 'Hi :)'

¿Cómo ejecutaría esto directamente desde la línea de comando?

Steven avatar Oct 21 '10 18:10 Steven
Aceptado

Con el argumento -c (comando) (suponiendo que su archivo se llame foo.py):

$ python -c 'import foo; print foo.hello()'

Alternativamente, si no le importa la contaminación del espacio de nombres:

$ python -c 'from foo import *; print hello()'

Y el término medio:

$ python -c 'from foo import hello; print hello()'
Frédéric Hamidi avatar Oct 21 '2010 11:10 Frédéric Hamidi

Simplemente colóquelo hello()en algún lugar debajo de la función y se ejecutará cuando lo hagapython your_file.py

Para una solución más ordenada, puedes usar esto:

if __name__ == '__main__':
    hello()

De esa manera, la función solo se ejecutará si ejecuta el archivo, no cuando lo importe.

Wolph avatar Oct 21 '2010 11:10 Wolph