Entrada y salida de Python (IO)

Entrada y salida de Python (IO)

En la programación de computadoras, la entrada y salida (IO, entrada / salida) a menudo están involucradas. El dispositivo que proporciona la función IO es el dispositivo de entrada y salida. Por ejemplo, el teclado y el mouse son dispositivos de entrada típicos, y la pantalla es un dispositivo de salida típico. Mientras el programa se está ejecutando, los datos se almacenan en la memoria, pero a veces requiere que el usuario pase los datos (como una contraseña) al programa a través del dispositivo de entrada, ya veces, el programa debe enviar los datos de los resultados en ejecución al usuario, que puede estar imprimiendo. En la pantalla, también se puede escribir en un archivo de disco.

Al programar, hay dos conceptos básicos sobre IO: entrada estándar (stdin) y salida estándar (stdout). Tanto la entrada como la salida estándar son para la programación de la línea de comandos (interfaz no gráfica). En términos simples, la entrada estándar se ingresa en la línea de comandos escribiendo en el teclado, y la salida estándar se imprime en la pantalla.
El lenguaje Python proporciona funciones prácticas de entrada (entrada ()) y salida (impresión ()).

Entrada de la función de entrada ()

¿Cómo recibo la entrada del teclado del usuario mientras el programa se está ejecutando? Eso es a través de la función input (), veamos un ejemplo:
In [6]: a = input('Por favor ingrese su edad:')
Por favor, introduzca su edad: 18

In [7]: print(type(a))
<class 'str'>
En este ejemplo, Por favor ingrese su edad: el aviso dado al usuario antes de la input() , la función input() devuelve la entrada del teclado recibida, y es una Cuerda , lo cual es muy importante, aunque sabemos que la edad debe ser un número , pero la entrada devuelve una cadena, debe convertirla en un entero, según sea necesario: a = int(a) .
Para la función input() , podemos aprender más sobre su descripción:
In [5]: input?
Signature: input(prompt=None, /)
Docstring:
Read a string from standard input.  The trailing newline is stripped.

The prompt string, if given, is printed to standard output without a
trailing newline before reading input.

If the user hits EOF (*nix: Ctrl-D, Windows: Ctrl-Z+Return), raise EOFError.
On *nix systems, readline is used if available.
Type:      builtin_function_or_method

Función de salida de impresión ()

Ya hemos tocado mucho esta función de impresión. Durante la ejecución del programa, usamos print para print los datos necesarios en la pantalla (stdout) para poder ver el estado del programa, los resultados de los datos, etc., que se encuentra en el proceso de depuración del programa Python. Muy util
Echemos un vistazo a la descripción de la función de impresión:
In [8]: print?
Docstring:
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)

Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file:  a file-like object (stream); defaults to the current sys.stdout.
sep:   string inserted between values, default a space.
end:   string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
Type:      builtin_function_or_method
La función de impresión es una función de parámetro variable, es decir, puede imprimir varias variables, como print(1), print(1, 2, 3) . Tiene cuatro parámetros por defecto definidos:
  • sep=' ' indica que varias variables que se imprimen están separadas por espacios;
  • end='\n' significa que un nuevo salto de línea se imprimirá automáticamente cuando se complete la impresión;
  • file=sys.stdout significa la salida predeterminada al dispositivo de salida de etiquetas (pantalla), también podemos imprimir en el archivo con este parámetro;
  • flush=False no fuerza un flush al dispositivo de salida de forma predeterminada.
Echemos un vistazo al uso de la función print() :
In [23]: print(1, 2, 3)
1 2 3

In [24]: print(1, 2, 3, sep=';')
1;2;3

In [25]: print(1, 2, 3, sep=';', end='|')
Luego mira cómo print la información en el archivo:
In [30]: f = open('z.log', 'w')

In [31]: print('learnPython', file=f)

In [32]: f.close()

In [33]: cat z.log
learnPython

Resumen

(1) Etiquete la entrada de la función de input() permitir que nuestro programa obtenga los datos de entrada del teclado; 
(2) Etiquete la función de salida print() permitir que nuestro programa imprima los datos en la pantalla;

Practica

(1) Escriba un programa para obtener cadenas, números enteros y números de punto flotante desde el teclado; 
(2) Practicar el uso de varios parámetros de la función print() .

留言