Fundamentos de Programación y Python

1

¿Por qué aprender Python?

2

Introducción a Python

3

Conceptos Básicos de Programación

4

Práctica: Te doy la bienvenida a los ejercicios interactivos

5

Manipulación de Cadenas de Texto en Python

6

Enteros, Flotantes y Booleanos

7

Todo lo que Debes Saber sobre print en Python

8

Operaciones Matemáticas en Python

9

Operaciones de Entrada/Salida en Consola

Colección y Procesamiento de Datos en Python

10

Listas

11

Método slice

12

Listas de más dimensiones y Tuplas

13

Aplicación de Matrices

14

Diccionarios

15

Comprehension Lists en Python (CLASE NUEVA)

Control de Flujo en Python

16

Estructuras condicionales

17

Bucles y Control de Iteraciones

18

Generadores e Iteradores

Funciones y Manejo de Excepciones en Python

19

Uso de Funciones en Python

20

Funciones Lambda y Programación Funcional en Python

21

¿Cómo realizar una función recursiva en Python?

22

Manejo de Excepciones y Uso de Pass (CLASE NUEVA)

Programación Orientada a Objetos en Python

23

Fundamentos de Programación Orientada a Objetos en Python

24

Ejercicio Biblioteca con POO

25

Herencia en POO con Python

26

Objetos heredados

27

Los 4 pilares de la programacion orientada a objetos

28

Uso de super() en Python (CLASE NUEVA)

29

Superando los Fundamentos de Programación Orientada a Objetos en Python

Lectura y escritura de archivos

30

Manejo de Archivos .TXT (CLASE NUEVA)

31

Manejo de Archivos CSV (CLASE NUEVA)

32

Manejo de Archivos JSON (CLASE NUEVA)

Biblioteca estándar de Python

33

Biblioteca estándar en Python (CLASE NUEVA)

34

Librería Os, Math y Random (CLASE NUEVA)

35

Librería Statistics y Análisis Estadístico (CLASE NUEVA)

36

Proyecto final: Guerra naval

Conceptos avanzados de Python

37

Recapitulación de lo aprendido hasta ahora

38

Escribir código Pythonico y profesional

39

Comentarios y Docstrings en Python

40

Scope y closures: variables locales y globales

41

Anotaciones de tipo

42

Validación de tipos en métodos

43

Librería Collections y Enumeraciones

Decoradores

44

Decoradores en Python

45

Decoradores anidados y con parámetros

46

Uso de Decoradores en clases y métodos

Métodos y estructura de clases en Python

47

Métodos mágicos

48

Sobrecarga de operadores

49

Implementación de `if __name__ == "__main__":`

50

Metaprogramación en Python

51

Uso de *args y **kwargs

52

Métodos privados y protegidos

53

Gestión avanzada de propiedades

54

Métodos estáticos y de clase avanzados

Programación concurrente y asíncrona

55

Introducción a la concurrencia y paralelismo

56

Threading y multiprocessing en Python

57

Asincronismo con asyncio

58

Asincronismo y concurrencia

Creación de módulos y paquetes

59

Creación de módulos en Python

60

Gestión de paquetes

61

Publicación de paquetes en PyPI

Proyecto final

62

Implementación de un sistema completo

63

Implementación de un Sistema Completo

You don't have access to this class

Keep learning! Join and start boosting your career

Aprovecha el precio especial y haz tu profesión a prueba de IA

Antes: $249

Currency
$209
Suscríbete

Termina en:

1 Días
16 Hrs
57 Min
17 Seg
Curso de Python

Curso de Python

Carli Code

Carli Code

Operaciones de Entrada/Salida en Consola

9/63
Resources

In Python, when working with projects that require user interaction, it is common to request data such as email or password to perform specific actions. This same approach is useful to understand the input function.

How do you receive user input in Python?

To receive user information from the console, we create a variable and assign the result of the input function. For example, to ask for the user's name:

name = input("Enter your name: ") print(name)

When this code is executed, a section for entering information is enabled. We enter a name, press Enter and the value stored in the variable name is printed.

What happens if we delete the print function?

If we delete print and execute the code, the name entered will not be displayed in the console:

name = input("Enter your name: ")

To see the result, it is essential to use print.

We can request the user's age by creating an age variable and using input, then print both values:

name = input("Enter your name: ") age = input("Enter your age: ") print(name) print(age)

When executed, we enter the name and age, and both values are displayed on the screen.

What is the type of data returned by input?

The result of input is always a string, even if we enter a number. We can check the data type using type:

name = input("Enter your name: ") age = input("Enter your age: ") print(type(name)) print(type(age(age)))

When executed, it will show that both values are of type str.

How do we convert the data type (casting)?

If we want the age to be an integer instead of a string, we use casting:

age = int(input("Enter your age: "))

We run and verify that age is now an integer. We can also convert to other data types, such as float:

age = float(input("Enter your age: "))

What happens if we enter an unexpected data?

If the code expects an integer, but we enter a string, a ValueError occurs. It is important to handle the data type correctly to avoid errors:

Contributions 34

Questions 6

Sort by:

Want to see more contributions, questions and answers from the community?

En Python, puedes realizar operaciones de entrada y salida en la consola de varias maneras. Estas son las más comunes: 1. **Entrada de Datos (Input):** * Para obtener información del usuario desde el teclado, puedes usar la función `input()`. * Esta función espera a que ingreses texto en la consola y presiones “Enter”. Luego, guarda el valor capturado en una variable. * Ejemplo:`nombre = input("Ingresa tu nombre: "`) `print(f"Hola, {nombre}!"`) ```js nombre = input("Ingresa tu nombre: ") print(f"Hola, {nombre}!") ``` 2. **Salida de Datos (Output):** * La función `print()` es la forma más común de mostrar información en la consola. * Puedes imprimir valores separados por espacios o darles formato específico. * Ejemplo:`resultado = 42` `print("El resultado es:"`, resultado) ```js resultado = 42 print("El resultado es:", resultado) ``` 3. **Formato Elegante de Salida:** * Puedes usar literales de cadena formateados (f-strings) o el método `str.format()` para controlar el formato de la salida. * Ejemplo con f-strings:`year = 2022` `event = "Elecciones"` `print(f"Resultados de las {year} {event}"`) ```js year = 2022 event = "Elecciones" print(f"Resultados de las {year} {event}") ``` * Ejemplo con `yes_votes = 42572654` `total_votes = 85705149` percentage = yes\_votes / total\_votes `print("{:-9} YES votes {:2.2%}".format`(yes\_votes, percentage))`str.format()`: ```js yes_votes = 42572654 total_votes = 85705149 percentage = yes_votes / total_votes print("{:-9} YES votes {:2.2%}".format(yes_votes, percentage)) ``` 4. **Ejecución de Comandos en la Consola:** * Además de entrada y salida, puedes ejecutar comandos directamente desde tu script de Python utilizando la función `os.system()`. * Esto te permite interactuar con el sistema operativo y ejecutar programas externos desde tu código.
Para el que no le deja escribir en consola sobre el input, asegúrese de que en el botón de Ejecutar, esté en Run Python File in Dedicated Terminal
Cabe mencionar que en el desarrollo normal de un software de producción, es importante “sanitizar” las entradas del usuario, esto es validar que los tipos de datos sean los esperados y prevenir inyección de datos malintencionados.
```js # Operaciones de Entrada/Salida en Consola # Entrada de datos nombre = input("¿Cuál es tu nombre? ") edad = int(input("¿Cuántos años tienes? ")) altura = float(input("¿Cuál es tu altura en metros? ")) # Salida de datos print("\nDatos ingresados:") print(f"Nombre: {nombre}") print(f"Edad: {edad} años") print(f"Altura: {altura} metros") # Realizar algunas operaciones y mostrar resultados a = int(input("\nIngresa un número entero para a: ")) b = int(input("Ingresa otro número entero para b: ")) print("\nOperaciones Aritméticas") print(f"Suma: {a} + {b} = {a + b}") print(f"Resta: {a} - {b} = {a - b}") print(f"Multiplicación: {a} * {b} = {a * b}") print(f"División: {a} / {b} = {a / b}") print(f"División Entera: {a} // {b} = {a // b}") print(f"Módulo: {a} % {b} = {a % b}") print(f"Potencia: {a} ** {b} = {a ** b}") print("\nOperadores de Comparación") print(f"Igual: {a} == {b} -> {a == b}") print(f"Distinto: {a} != {b} -> {a != b}") print(f"Mayor que: {a} > {b} -> {a > b}") print(f"Menor que: {a} < {b} -> {a < b}") print(f"Mayor o igual que: {a} >= {b} -> {a >= b}") print(f"Menor o igual que: {a} <= {b} -> {a <= b}") print("\nOperadores Lógicos") print(f"and: {a} > {b} and {a} > 0 -> {a > b and a > 0}") print(f"or: {a} > {b} or {a} < 0 -> {a > b or a < 0}") print(f"not: not({a} > {b}) -> {not(a > b)}") print("\nOperadores de Asignación") c = 10 print(f"Asignación: c = {c}") c += 5 print(f"Asignación de suma: c += 5 -> c = {c}") c -= 3 print(f"Asignación de resta: c -= 3 -> c = {c}") c *= 2 print(f"Asignación de multiplicación: c *= 2 -> c = {c}") c /= 4 print(f"Asignación de división: c /= 4 -> c = {c}") c %= 3 print(f"Asignación de módulo: c %= 3 -> c = {c}") c = 10 c //= 2 print(f"Asignación de división entera: c //= 2 -> c = {c}") c **= 3 print(f"Asignación de potencia: c **= 3 -> c = {c}") print("\nOperadores Bit a Bit") print(f"AND: {a} & {b} -> {a & b}") print(f"OR: {a} | {b} -> {a | b}") print(f"XOR: {a} ^ {b} -> {a ^ b}") print(f"NOT: ~{a} -> {~a}") print(f"Desplazamiento a la izquierda: {a} << 1 -> {a << 1}") print(f"Desplazamiento a la derecha: {a} >> 1 -> {a >> 1}") # Salida final print("\nGracias por utilizar el programa. ¡Hasta la próxima!") ```
¡Hola! Aquí dejo mis apuntes con el script y su ejecución: Apuntes:![](https://static.platzi.com/media/user_upload/clase_7-1d65dace-9ddd-4eb2-972f-3068d4813e9d.jpg) Script: ![](https://static.platzi.com/media/user_upload/clase_7_script-708cc105-1f54-4e53-937b-5fdc6267cada.jpg) Ejecución: ![](https://static.platzi.com/media/user_upload/clase_7_script_ejecuci%C3%B3n-a45e5502-7792-4c7b-91b5-b5c8da7ddf11.jpg)
Al realizar un input el resultado siempre será de tipo str a menos que indiquemos lo contrario en la sentencia (casting) ejemplo: ```python age = int (input("ingrese su edad: ")) ```
Aquí les dejo una captura del script que hice con las validaciones para nombre y edad, manejo de errores y lo más modular posible. Justo coincidió con el ValueError mencionado al final por la profesora. ![](https://static.platzi.com/media/user_upload/image-ae523d8b-178b-45b6-a46b-010189272327.jpg) Un Output: ![](https://static.platzi.com/media/user_upload/image-7e48ab81-960e-407c-99d9-b6ca62d3e642.jpg)
Tablita de consulta rápida: ![](https://static.platzi.com/media/user_upload/image-67461468-d714-41cd-9ac5-eec1e5215623.jpg)
En la versión que estoy usando actualmente, cuando le pido al usuario ingresar la edad y le pido a python que imprima el typo de edad, me da int
Sí, Python toma automáticamente el input como un `str`. No hay una forma nativa de que el input se convierta a `int` directamente al ingresar datos en la consola. Sin embargo, puedes crear una función que encapsule la llamada a `input()` y realice la conversión para ti. Por ejemplo: ```python def input_int(prompt): return int(input(prompt)) edad = input_int("Ingresa tu edad: ") print(edad) ``` Esto te permite ingresar directamente un número sin tener que escribir `int()` cada vez.
Ejemplos de valueError: * Intentar convertir un string a número, y el string no se puede convertir a entero, por ejemplo, el string "python" no se pude convertir a tipo entero, porque noestá compuesto de solo números, porque no es válido, pero "123", si es posible convertirlo a tipo entero. * escribir una base numérica incorrecta, por ejemplo; int("123",2 ) esta mal por que "123" debe ser escrito en binario, es decir, "101" * intentar un desempaquetado incorrecto, por ejemplo; a,b = (1,2,3), agrega un elemento hallado izquierdo, o le resta uno al derecho * Intentar eliminar un elemento que no existe en una lista * también se produce cuando un método recibe un valor incorrecto acorde su propósito
De esta forma se ve mas interesante :) ```js name = input('What is your name? ') print(f'Hello {name}') age = int(input('How old are you? ')) print(f'Your age is {age} {name} !') ```
![](https://static.platzi.com/media/user_upload/image-bfdf8a6c-473c-4e8b-8c86-2b0442736ae4.jpg)
![](https://static.platzi.com/media/user_upload/image-1ce418d8-de6b-41a5-ac8e-840fd31e41e7.jpg)
El ingresar/recibir información con la función input() siempre dará como resultado un tipo de dato "string" no importa que se ingrese un número. Para poder cambiar el tipo de dato se tendrá que hacer un "Cast" al tipo de dato deseado.
To change the type of a variable in Python, you can use casting functions. For instance, if you have a variable that is a string and you want to convert it to an integer, you can use the `int()` function. Similarly, for converting to a float, you would use `float()`. Here's an example: ```python age_str = input("Enter your age: ") # age_str is of type string age_int = int(age_str) # Now age_int is of type integer ``` It's important to ensure that the input can be converted to the desired type to avoid errors.
![](https://static.platzi.com/media/user_upload/image-f8433303-48e4-4a18-917f-7d58b8a6d71b.jpg) ¡Algo básico, pero medio funcional! jaja
is the python version of the prompt function on js
En Python, la interacción con el usuario mediante la función input es esencial para capturar datos desde la consola. Esta función permite solicitar información al usuario, almacenándola como una cadena de texto (str). Por ejemplo, al pedir un nombre o una edad: `nombre = input("Ingrese su nombre: ")` `edad = input("Ingrese su edad: ")` Es importante destacar que el valor devuelto por input siempre será de tipo str, incluso si el usuario introduce números. Si necesitas trabajar con otros tipos de datos, como enteros o flotantes, puedes utilizar técnicas de conversión de tipo (casting). Por ejemplo: `edad = int(input("Ingrese su edad: ")) # Convertir a entero` `altura = float(input("Ingrese su altura: ")) # Convertir a flotante` Sin embargo, es crucial validar los datos ingresados para evitar errores como el ValueError que ocurre cuando se intenta convertir un dato incompatible (e.g., convertir “abc” a un entero). Un buen hábito al trabajar con input es combinarlo con manejo de excepciones para garantizar robustez en el código. Por ejemplo: `try:` `edad = int(input("Ingrese su edad: "))` `print(f"Tu edad es {edad}")` `except ValueError:` `print("Por favor, ingresa un número válido."` Este enfoque no solo mejora la experiencia del usuario, sino que también asegura que el programa sea más estable y manejable frente a entradas inesperadas.
Mezclando lo visto antes con esto:nombre = input("Ingresa tu nombre: ") print(f"Gracias {nombre}") age = input(f"Cual es tu edad {nombre}: ") print(f"Eres {nombre} y tienes {age} años de edad") ```js nombre = input("Ingresa tu nombre: ") print(f"Gracias {nombre}") age = input(f"Cual es tu edad {nombre}: ") print(f"Eres {nombre} y tienes {age} años de edad") ```
Igual cuando no se quieren hacer cálculos directamente con los datos numéricos que estamos ingresando, podemos dejarlos como string. En muchos casos la edad no se usa para hacer cálculos, por ende no es necesario convertirla a dato numérico.
Me gusta profundizar en tópicos, conceptos que se ven interesantes, uno de ellos es **Casting,** añado un poco más de info: Hay 2 tipos de casting, implícito y explicito, cuando una operación de dos tipos diferentes da un tipo es implícito por ejemplo multiplicar un int con un float da un float de resultado. Explicito es usar funciones como **int, float** para convertir el tipo de dato. Y otro concepto que encontre es **duck typing** donde no se invoca a un tipo para invocar un método existente. If it looks like a duck and quacks like a duck, it's a duck
Excelente ponencia de Carli, muchas gracias por tu enseñanza..
Notas: -El tipo de dato en los inputs siempre sera str por defecto, pero se le puede asignar un tipo de dato manualmente como por ejemplo asi: age = int(input("Ingrese su edad: "))
ame esta clase
Me ha encantado este curso!!!
La función input nos permitirá recibir información del usuario y al realizar casting nos permitirá cambiaremos el tipo de dato
## Operaciones de Entrada/Salida en consola Cuando usamos la función “input” los datos que obtengan siempre serán string, a pesar de que se ingresen números, por ende, hay que realizar un Casting= Cambiar el tipo de dato
Hola a todxs, yo me perdí conel tipo de dato "Casting", para que funciona? Saludos y gracias😊
En Python, las operaciones de entrada y salida (I/O) en consola son fundamentales para interactuar con el usuario. Estas operaciones se realizan principalmente utilizando las funciones `input()` para recibir datos del usuario y `print()` para mostrar información en la consola. \### Operación de Entrada: `input()` La función `input()` se utiliza para leer una línea de texto ingresada por el usuario desde la consola. El texto ingresado se devuelve como una cadena (string). \*\*Sintaxis:\*\* ```python variable = input("Texto para el usuario: ") ``` \*\*Ejemplo:\*\* ```python nombre = input("¿Cómo te llamas? ") print("Hola, " + nombre + "!") ``` \- \*\*Explicación:\*\* En este ejemplo, se solicita al usuario que ingrese su nombre. Luego, se utiliza `print()` para saludar al usuario con el nombre ingresado. \*\*Convertir la Entrada:\*\* Como `input()` devuelve una cadena, si necesitas un tipo de dato diferente (por ejemplo, un número entero o un número de punto flotante), deberás convertir la entrada usando funciones como `int()` o `float()`. \*\*Ejemplo:\*\* ```python edad = int(input("¿Cuántos años tienes? ")) print("Tendrás " + str(edad + 1) + " el próximo año.") ``` \- \*\*Explicación:\*\* Aquí, `input()` recoge la edad del usuario como una cadena, y `int()` la convierte en un número entero para poder realizar operaciones aritméticas. \### Operación de Salida: `print()` La función `print()` se utiliza para mostrar datos en la consola. Es una de las funciones más utilizadas en Python para generar salidas. \*\*Sintaxis:\*\* ```python print(objeto1, objeto2, ..., sep=' ', end='\n') ``` \- \*\*`objeto1, objeto2, ...`\*\*: Los objetos que deseas imprimir. Puedes pasar múltiples objetos, y `print()` los separará automáticamente con un espacio. \- \*\*`sep`\*\*: Especifica el separador entre los objetos. Por defecto es un espacio (`' '`). \- \*\*`end`\*\*: Especifica lo que se añade al final de la salida. Por defecto es un salto de línea (`'\n'`). \*\*Ejemplo Básico:\*\* ```python print("Hola, mundo!") ``` \*\*Ejemplo con Múltiples Objetos:\*\* ```python nombre = "Alice" edad = 30 print("Nombre:", nombre, "Edad:", edad) ``` \*\*Personalizar Separadores y Finales:\*\* ```python print("A", "B", "C", sep="-") # Salida: A-B-C print("Hola,", end=" ") print("mundo!") # Salida: Hola, mundo! ``` \### Resumen de Operaciones de Entrada/Salida 1\. \*\*Entrada con `input()`\*\*: \- Se utiliza para capturar datos del usuario. \- Siempre devuelve una cadena, que puede ser convertida a otros tipos de datos según sea necesario. 2\. \*\*Salida con `print()`\*\*: \- Muestra datos en la consola. \- Permite personalizar el formato de la salida mediante argumentos opcionales como `sep` y `end`. Estas funciones forman la base de la interacción con el usuario en aplicaciones de consola en Python.
Comparto mis apuntes para la clase de hoy ![](https://static.platzi.com/media/user_upload/Imagen%20de%20WhatsApp%202024-07-31%20a%20las%2009.35.41_e5314d6d-cbea9eef-60e4-4e91-b47c-fdf29d5b83f0.jpg)
![](https://static.platzi.com/media/user_upload/image-e565638e-0d35-403c-8f21-448ee270a268.jpg)
```python #En este ejercicio vamos a trabajar introduciendo informacion e interactuando con un usuario nombre = input ("ingresa tu nombre: ") print("Tu nombre es", nombre ) print(type(nombre)) edad = int(input ("ingresa tu edad: ")) print("Tu edad es", edad) print(type(edad)) ```#En este ejercicio vamos a trabajar introduciendo informacion e interactuando con un usuarionombre = input ("ingresa tu nombre: ")print("Tu nombre es", nombre )print(type(nombre))edad = int(input ("ingresa tu edad: "))print("Tu edad es", edad)print(type(edad))