Python String to Int: Cómo convertir una cadena en un entero en Python

A diferencia de muchos otros lenguajes de programación que existen, Python no encasilla implícitamente enteros (o flotantes) en cadenas cuando los concatena a cadenas.

Afortunadamente, Python tiene una práctica función incorporada str()que convertirá el argumento pasado a un formato de cadena.

La forma incorrecta de convertir una cadena en un entero en Python

Los programadores que provienen de otros lenguajes de programación pueden intentar realizar la siguiente concatenación de cadenas, lo que producirá un error:

age = 18 string = "Hello, I am " + age + " years old"

Puede ejecutar este código en repl.it.

El error que aparece es:

Traceback (most recent call last): File "python", line 3, in  TypeError: must be str, not int

Aquí, TypeError: must be str, not intindica que el número entero debe convertirse primero en una cadena antes de que pueda concatenarse.

La forma correcta de convertir una cadena en un entero en Python

Aquí hay un ejemplo de concatenación simple:

age = 18 print("Hello, I am " + str(age) + " years old") # Output # Hello, I am 18 years old

Puede ejecutar este código en repl.it.

A continuación, se explica cómo imprimir 1 2 3 4 5 6 7 8 9 10con una sola cadena:

result = "" for i in range(1, 11): result += str(i) + " " print(result) # Output # 1 2 3 4 5 6 7 8 9 10

Puede ejecutar el código en repl.it.

Aquí hay una explicación línea por línea de cómo funciona el código anterior:

  1. En primer lugar, se asigna una variable 'resultado' a una cadena vacía.
  2. El bucle for se utiliza para iterar sobre una lista de números.
  3. Esta lista de números se genera mediante la función de rango.
  4. entonces el rango (1,11) generará una lista de números del 1 al 10.
  5. En cada iteración del ciclo for, esta variable 'i' tomará valores de 1 a 10.
  6. En la primera iteración cuando la variable i = 1, luego la variable [resultado = resultado + str (i) + “(carácter de espacio)”], str (i) convierte la 'i' que es un valor entero en un valor de cadena.
  7. Dado que i = 1, en la primera iteración finalmente el resultado = 1.
  8. Y el mismo proceso continúa hasta i = 10 y finalmente después de la última iteración el resultado es = 1 2 3 4 5 6 7 8 9 10.
  9. Por lo tanto, cuando finalmente imprimimos el resultado después del bucle for, la salida en la consola es '1 2 3 4 5 6 7 8 9 10'.

Espero que te haya resultado útil. Codificación feliz.