Variables y tipos de variables

Las variables en Python pueden ser declaradas en cualquier momento; no requieren declaración de tipo.

Se asignan con =. Se pueden asignar muchas variables al mismo tiempo utilizando ,:

uno, dos = 1, 2

Copias

Cuando se genera una variable a partir de otra estamos haciendo una copia superficial - las variable antigua y la nueva comparte la misma identidad o inode del objeto (id()).

Números

Los números enteros (int) no tienen decimales. Dividir dos números enteros devuelve por defecto un decimal (float), pero si en lugar de / utilizamos // obtenemos otro entero.

Se puede transformar un entero en un decimal utilizando int() sobre cualquier valor numérico (o float() para el efecto contrario).

Los números complejos (complex) tienen una parte real e imaginaria, y se definen con la sintaxis real+imaginarioj:

c = 2+3j

print(c.real)
# 2.0
print(c.imag)
# 3.0
print(c)
# (2+3j)

Strings

Las cadenas o string pueden concatenarse con operadores matemáticos; se definen con ' o ". """ ... """ al declarar una cadena permite generar un string multilínea.

Transformar una cadena

.split() separa una cadena por espacios:

person = "David Lynch"
name, surname = person.split()
name
# 'David'
surname
# 'Lynch'

list() transforma la cadena en una lista.

Para unir una lista en una cadena se puede utilizar .join():

cosas = ["1984", "George", "Orwell"]
sep = "_"
print(sep.join(cosas))
# 1984_George_Orwell

Incluir variables en una cadena

Utilizando la sintaxis de C

% sirve para definir las variables, que se recogen en un tuple:

nombre = 'Pablo'
edad = 5
print("Me llamo %s, y tengo %d años" % (nombre, edad))
# Me llamo pablo y tengo 5 años
Wildcard Descripción
%s string
%d enteros
%f decimales

En los números decimales (%f) se puede definir la precisión - %5.3f indica que el número debe tener cinco cifras, tres de ellas decimales.

Nombrando las variables directamente

print(f'Me llamo {nombre}, y tengo {edad} años')