Compilando código python3 en terminal con intérprete

Compilando código python3 en terminal con intérprete

Cuando compilo mi código simplemente con el comando python3 name.py, se ejecuta, pero luego toda la historia termina y no puedo hacer nada con los datos compilados.

Quiero de alguna manera compilar mi programa para el intérprete y tener la capacidad de experimentar con los datos en ese intérprete. Por ejemplo, quiero usarlo timeit(function(argument))con la función y el argumento, definidos y configurados en mi programa name.py.

Respuesta1

Lo que buscas es el -iinterruptor. Según las páginas de manual:

-i    When  a  script  is passed as first argument or the -c option is
      used, enter interactive mode after executing the script  or  the
      command.  It does not read the $PYTHONSTARTUP file.  This can be
      useful to inspect global variables  or  a  stack  trace  when  a
      script raises an exception.

Entonces, si el nombre de su script es name.pylo que debe hacer es ejecutar:

python3 -i name.py

Respuesta2

La respuesta de @ daltonfury42 es una forma de hacerlo, pero tenga en cuenta que primero ejecutará el script antes de ingresar al intérprete. Otra es simplemente ejecutar el intérprete en el mismo directorio que su script e importarlo.

$ cat spam.py 
def main(*args):
    print("Called main() with args: ", args)

if __name__ == "__main__":
    main("foo")
$ python3 spam.py 
Called main() with args:  ('foo',)
$ python3
>>> import spam
>>> spam.main("bar")
Called main() with args:  ('bar',)
>>> 

información relacionada