Tengo un problema al codificar Python en la terminal. Solo estoy aprendiendo conceptos básicos, así que no tengo necesidad de crear archivos .py.
En la terminal, puedo ejecutar una línea de código en el intérprete de Python, pero ¿cómo escribo más de una línea?
Obviamente, si presiono enter, ingresa el comando y no baja una línea.
Solo quiero probar lo siguiente en la terminal:
my_age = 35
my_eyes = 'Blue'
print "my age is %d and my eye color is %s" % (my_age, my_eyes)
Respuestas:
Agregar una barra diagonal inversa (
\
)El truco es, similar a lo que haría en
bash
, por ejemplo, agregar una barra diagonal inversa. Por ejemplo, si quiero imprimir un1
:Si escribe un
\
, Python le pedirá...
(líneas de continuación) que ingrese el código en la siguiente línea, por así decirlo.Nota al margen: esto es lo que sucede automáticamente cuando crea una definición de función o clase, es decir, los momentos en que realmente necesita una nueva línea, por lo que nunca hay un uso realmente bueno para eso, o al menos ninguno que yo sepa. En otras palabras, Python es lo suficientemente inteligente como para ser consciente de que necesita líneas de continuación cuando ingresa una nueva definición de función u otras construcciones similares (por ejemplo
if:
). En estos casos automáticos, tenga en cuenta que necesita ingresar una línea vacía\
para decirle a Python que ya ha terminado.Para todo lo demás, debe escribir una línea tras otra. La forma en que funciona un intérprete es que, bueno, interpreta cada línea que lo alimenta. Ni más ni menos. Solo "actuará" cuando vea una nueva línea, por lo tanto, le pedirá al intérprete que ejecute lo que le dio. La barra invertida simple evitará que el intérprete reciba un carácter de nueva línea (es decir, no sabrá que realmente presionó Enter), pero eventualmente recibirá uno.
El intérprete de Python tiene capacidades avanzadas cuando usa la línea de lectura de GNU, como Emacs o las combinaciones de teclas de estilo vi para navegar dentro de una línea (por ejemplo Ctrl-A). Sin embargo, estos solo funcionan en la línea actual. La historia también está ahí, solo intenta y presiona ↑.
¿Qué pasa si quiero correr líneas complicadas una y otra vez?
Probablemente desee utilizar los archivos fuente adecuados si desea ejecutar más de una línea de código a la vez.
O use los cuadernos Jupyter , que ofrecen una excelente forma interactiva de crear código Python con un intérprete incorporado. Puede escribir código como lo haría en un editor de código fuente, pero puede elegir qué líneas se interpretan juntas. Luego puede ejecutar solo partes del código de forma selectiva. La mejor manera es tratar de ver si se ajusta a su flujo de trabajo.
fuente
¿Qué hay de usar
;\
? El punto y coma señala el final de un comando y la barra diagonal inversa indica que continuamos en la línea siguiente. Por ejemplo, escribapython
en la línea de comando para ingresar al intérprete de Python, luegodebería dar una salida de
fuente
En pocas palabras, si desea aprender y desea ejecutar más de una línea, escríbala en un archivo .py.
El método de barra diagonal inversa es bueno cuando desea ejecutar rápidamente una serie de comandos, pero no ayuda cuando está aprendiendo.
Podrá desarrollar mejor el código, editar comandos individuales sin preocuparse por errores ortográficos y reutilizar fragmentos de código que le resulten útiles si los escribe en un archivo pequeño.
fuente
Acabo de escribir lo siguiente en mi indicador de shell, y funcionó bien:
La forma de escribir más de una línea de código en el intérprete interactivo de Python es, bueno, escribir más de una línea de código en el intérprete interactivo de Python. Creo que eso sería lo suficientemente bueno para tus propósitos.
Es cierto que obtendrá un nuevo aviso después de cada línea, lo que significa que si dos de sus líneas de código producen resultados, ese resultado estará separado por avisos. Supongo que eso es lo que le preocupa, aunque el ejemplo en su pregunta no sugiere que:
Si eso es un problema, puede incluir sus múltiples declaraciones en una declaración (¡correctamente sangrada!)
if
:(Sugeriría, a pesar de que no responde a su pregunta, que si está escribiendo un código lo suficientemente complejo como para que esto importe, debería estar escribiendo guiones. Quizás haya comenzado a hacerlo en el año y medio desde que publicó la pregunta).
fuente
Estaba revisando la respuesta que obtuviste. Seguí experimentando poniendo diferentes símbolos. Finalmente obtuve la sintaxis correcta para escribirla. Intenta lo siguiente
esto te dará un resultado
sin ningún error
acabo de usar ';' para hacerlo escribir en otra línea
espero que mi respuesta te pueda ayudar
fuente
Simplemente salga del shell y abra un nuevo archivo de editor. Es decir, ir al archivo y abrir un nuevo archivo. Escriba tantas líneas de códigos como desee.
fuente
En los tres puntos, asegúrese de presionar la tecla "tab" antes de ingresar el siguiente comando. Puede continuar escribiendo tantos comandos de esa manera. Entonces, cuando presiona enter después de escribir su segunda línea de código, el intérprete le permite ingresar la tercera línea de código ... como en el ejemplo de Fibonacci a continuación (del tutorial):
verá el resultado del programa anterior
fuente