Un joven escribiendo en su computadora portátil en casa
Credito de imagen: g-stockstudio / iStock / Getty Images
A diferencia de C ++ y Java, las variables de Python no contienen información de tipo explícita. Si está utilizando una función que requiere una cadena, puede pasarle variables de otros tipos sin lanzando una excepción, aunque su código puede lanzar una excepción cuando intenta procesar la variable. Los únicos tipos de datos que puede necesitar convertir en cadenas son las estructuras de datos compuestas, como conjuntos y listas. Python incluye funciones y operadores convenientes para iterar sobre los elementos en una estructura de datos y agregar caracteres a una variable de cadena.
Idiomas sólidos y dinámicamente escritos
C ++ y Java requieren una palabra de reserva de tipo que preceda a todas las asignaciones de variables porque el compilador o el entorno de ejecución deben saber cómo tratar los datos. Estos lenguajes de tipado estático utilizan conversión de tipos para convertir entre tipos, si es posible. Dado que Python es un lenguaje escrito dinámicamente, el intérprete infiere el tipo en tiempo de ejecución, por lo que simplemente asigna valores a las variables según sea necesario. Puede asignar cualquier tipo de datos a una variable utilizada anteriormente como un tipo diferente, y el recolector de basura de Python elimina la variable anterior de la memoria.
Video del día
Conversión de estructuras de datos en cadenas
Si su programa recopila información de texto en una estructura compuesta como una lista, tupla o conjunto, puede recorrer la estructura de datos para agregar elementos a una variable de cadena. No necesita declarar una variable de cadena antes de iterar sobre la estructura de datos, pero puede simplificar su código. Por ejemplo, el siguiente código demuestra el método más básico para convertir una lista en una cadena:
ultimateQuestion = "" # declare una cadena vacía "ultimateQuestion"
tokens = ["What's", 6, "times", 9, "?"] # lista de tipos mixtos con espacios en blanco
para t en tokens: ultimateQuestion + = str (t)
imprimir (ultimateQuestion)
El método str utilizado en el bucle for convierte números enteros en cadenas y no tiene ningún efecto sobre las cadenas existentes. Si ejecuta este código en el intérprete de Python, imprime "¿Cuánto es 6 por 9?"
Métodos de cadena incorporados
Como la mayoría de los lenguajes de alto nivel, Python incluye muchos métodos que pertenecen al tipo de cadena incorporado. En Python, puede llamar a estos métodos desde un literal de cadena, por lo que para concatenar elementos de lista, por ejemplo, puede pasar una variable de lista al método de unión de un literal de cadena como en el siguiente ejemplo:
tokens = ['Hello', 'World'] # tokens de cadena sin espacios en blanco
pyString = '' .join (tokens)
imprimir (pyString)
Este script llama a join desde el literal de cadena '', que es una cadena de un carácter de solo el carácter de espacio. Concatena 'Hola' y 'Mundo' en "Hola mundo" insertando el objeto de llamada, un carácter de espacio, entre cada elemento de la lista.
Resolución de alcance variable de Python
Como en otros lenguajes de alto nivel, debe prestar atención al alcance de una variable al declarar y asignar variables de cadena. Si declara una variable de cadena dentro de una función o bucle, no puede usarla en ningún otro lugar del programa. Por ejemplo, el intérprete de Python destruye la variable "verticalList" después de regresar del bucle:
para g en comestibles: verticalList + = g + '\ n' # cadena declarada dentro del bucle
imprimir (verticalList)
Este script genera una excepción porque "verticalList" no está definido fuera del alcance del bucle for.