Introducción
Python tiene varios tipos de datos integrados. A veces, al escribir código Python, es posible que deba convertir un tipo de datos en otro. Por ejemplo, concatenar una cadena y un número entero, primero deberá convertir el número entero en una cadena.
Este artículo explica cómo convertir un número entero en una cadena (de int a cadena) con Python.
Función str () en Python
En Python, podemos convertir diferentes tipos de datos en cadenas usando la función incorporada str()
.
La función str()
devuelve una versión de cadena de un objeto dado. Toma las siguientes formas:
class str(object='')
class str(object=b'', encoding='utf-8', errors='strict')
object
: objeto para convertir en una cadena.
La función acepta tres argumentos, pero por lo general, cuando convierte un número entero en una cadena, solo pasa un argumento ( object
) a la función.
Convertir un número entero en una cadena
Para convertir el entero 23 en una versión de cadena, simplemente pase el número a la función str()
:
days = "23"
str(23)
type(days)
'23'
<class 'str'>
Las comillas alrededor del 23 indican que el número no es un entero, sino un objeto de cadena. Además, la función type()
muestra que el objeto es una cadena.
En Python, las cadenas se declaran utilizando '
), dobles ( "
) o triples ( """
).
Concatenación de cadenas y enteros
Intentemos concatenar cadenas y números enteros usando el +
e imprimamos el resultado:
number = 6
lang = "Python"
quote = "There are " + number + " relational operators in " + lang + "."
print(quote)
Python arrojará un TypeError
porque no puede concatenar cadenas y enteros:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can only concatenate str (not "int") to str
Para convertir el entero en una cadena, pase el entero a la función str()
:
number = 6
lang = "Python"
quote = "There are " + str(number) + " relational operators in " + lang + "."
print(quote)
Ahora, cuando ejecute el código, se ejecutará correctamente:
There are 6 relational operators in Python.
También hay otras formas de concatenar cadenas y números.
La clase de cadena incorporada proporciona un format()
que formatea una cadena dada usando un conjunto arbitrario de argumentos posicionales y palabras clave:
number = 6
lang = "Python"
quote = "There are {} relational operators in {}.".format(number, lang)
print(quote)
There are 6 relational operators in Python.
En Python 3.6 y versiones posteriores, puede usar f-string
, que son cadenas literales con el prefijo 'f'
contienen expresiones entre corchetes:
number = 6
lang = "Python"
quote = f"There are {number} relational operators in {lang}."
print(quote)
There are 6 relational operators in Python.
Finalmente, puede usar el antiguo %-formatting
:
number = 6
lang = "Python"
quote = "There are %s relational operators in %s." % (number, lang)
print(quote)
There are 6 relational operators in Python.
Conclusión
En Python, puede convertir un número entero en una cadena usando la función str()
.