Cargando...

Python 101

Publicación: Enero 20, 2026

Diferencias significativas de python respecto a otros lenguajes

  • A diferencia de otros lenguajes como C++ o PHP, los cuales emplean llaves ("{}") para delimitar secciones de código que pertenecen a condiciones, ciclos, etc.; en python todo lo que esté dentro a cierta identación pertenece a lo que esté a un nivel arriba.
  • Las sentencias de código no se terminan con ";"
  • No es obligatorio inicializar las variables antes de emplearlas ni especificar su tipo de variable
  • No es necesario importar librerías relacionadas a la manipulación de entradas y salidas (como <iostream> en C++ y System en C#), un método main o clases de inicialización (como en Java)
  • Por ejemplo:

    C++

    #include 
    using namespace std;
    
    int main() {
        int i;
        for(i = 0; i < 5; i++){
            cout << "hi";
        }
        return 0;
    }
    

    Python

    for i in range(0, 5):
        print("hi")
    
  • elif: A diferencia de otros lenguajes en los que una condición alternativa a la primaria se puede denotar mediante un else if(), python emplea la palabra reservada elif. Por ejemplo:
  • C++

    string food = "sandwich";
    if (food == "tacos"){
    	cout << "Favorite food";
    } else if (food == "chilaquiles"){
    	cout << "Favorite food";
    } else {
    	cout << "Not favorite food";
    }
    

    Python

    food = "sandwich"
    
    if (food == "tacos"): 
    	print("Favorite food")
    elif (food == "chilaquiles"):
    	print("Favorite food")
    else:
    	print("Not favorite food")
    
  • += : Los operadores ++ y -- para incrementar y disminuir variables en 1 unidad se denotan como += y -= en python. Nóteste que existen otros operadores con operaciones similares como *= y :=:

Datos

Comandos esenciales

¿Cómo imprimir datos?

print("Hello world")
Hello world

¿Cómo agregar un comentario?

# Comentario

print("Esto es código")

"""
Este es
   un comentario
multilínea
"""
Esto es código

Observemos que los comentarios fueron ignorados por el interpredador

¿Cómo agregar un TODO/FIXME?

Cuando hacemos un programa, muchas veces no tenemos bien definido cómo vamos a crear cada uno de las clases o funciones específicas de nuestro programa, pero por ejemplo, tenemos metas claras de elementos que debe tener o elementos que queremos recordar optimizar en el futuro. Dentro del IDE PyCharm, es posible agregar tareas (TODO) o recordatorios (FIXME) que serán resaltados e indexados dentro de la ventana de TODO de PyCharm.

TODO examples in Pycharm

¿Cómo imprimir sin salto de línea?

Agrega el parámetro end=" " dentro de la función print()

print("Hello with newline")

print("Hello without newline", end=" ")
print("******")
Hello with newline
Hello without newline ******

¿Cómo imprimir/concatenar una variable dentro de una cadena?

Para concatenar variables dentro de una cadena, podemos emplear un “f-string”, el cual consiste en agregar una “f” antes de la cadena y posicionar las variables en el lugar deseado envuelata en corchetes (”{}”).

age = 21
print(f"I'm {age} years old")

favorite_number = 42
text = f"My favorite number is {favorite_number}"
print(text)
I'm 21 years old
My favorite number is 42

int age = 21
float price = 19.25
print(age)
print(price)

¿Cómo ingresar datos?

name = input("Cómo te llamas?: ")
print(f"Hola {name}!")
Cómo te llamas?: Cardui
Hola Cardui!

Nótese que la función input retornará una cadena. Por lo tanto, si la entrada esperada es un número por ejemplo, es necesario transformar la entrada en el tipo de dato adecuado; es decir, hacer un cast.

favNum = int(input("Cuál es tu número favorito?: "))

if favNum < 100:
    print("Tú número favorio es menor a 100")
else:
    print("Tú número favorio es mayor a 100")
Cuál es tu número favorito?: 42
Tú número favorio es menor a 100

Tipos de variables

¿Cómo obtener un tipo de variable?

dog = 'Kypton'
age = 12
alive = True

print(type(dog))
print(type(age))
print(type(alive))
<class 'str'>
<class 'int'>
<class 'bool'>

Cadenas str

name = “Sherlock”
print(name)
Sherlock

Números int, float, complex

Nótese que Python maneja operaciones con números complejos

age = 21 # int
price = 19.25 # float

print(f"age: {age}")
print(f"price: {price}")

z = 2+3j # complex
print(f"z: {z}")

coodinate = complex(1.6, 8.3)  
print(coodinate)
print(coodinate.real)
print(coodinate.imag)
age: 21
price: 19.25
z: (2+3j)
(1.6+8.3j)
1.6
8.3

Boleanos bool

Los clásicos verdadero (True) y falso (False)

human = True
reptile = False

me = human

if me == human:
	print("I am human")
else:
	print("I'm not human")
I am human

Secuencias (estructuras lineares) list, tuple, range

List vs tuple

List (lista) Mutable Puedes cambiar sus valores en el futuro

Tuple (tupla) Inmutable NO puedes cambiar sus valores en el futuro

Ejemplo:

tacos = ["lechón", "birria", "costilla"] # list
tacos_forever = ("pastor", "bisteck", "arrachera") # tuple
print(tacos)
print(tacos_forever)

x = range(1, 10, 2)
y = list(x)
print(x)
print(y)
['lechón', 'birria', 'costilla']
('pastor', 'bisteck', 'arrachera')
range(1, 10, 2)
[1, 3, 5, 7, 9]

Range range(start, stop, step)

Generar elementos de en un rango especificado. No es lo mismo que una lista. Es un tipo de objeto diferente.

ages = range(1, 10, 2)
print(ages)

for i in ages:
    print(i)
range(1, 10, 2)
1
3
5
7
9

Diccionarios (estructuras multidimensionales) dict

Su característica principal es almacenar la información a manera de {Key: Value}, por ello son común mente conocidos como diccionarios. Además de poder accesar a su información fácilmente mediante índices. Por ejemplo:

# Simple dictionary
capitals = {
    "Mexico": "Mexico City",
    "France": "Paris",
    "Germany": "Berlin"
}
print(capitals)
print(capitals["Mexico"]) # Mexico City

# Nesting Dictionaries in Lists
starwars = [
	{
		"name": "Anakin Skywalker",
		"forceSensitive": True,
		"kids": ["Luke", "Leia"]
	},
	{
		"name": "Bo-Katan Kryze",
		"forceSensitive": False,
		"kids": None
	}
]
print(starwars)
print(starwars[1]["name"]) # Bo-Katan Kryze

# Nesting a List in a Dictionary
cities = {
  "France": ["Paris", "Lille", "Dijon"],
  "Germany": ["Berlin", "Hamburg", "Stuttgart"],
}
print(cities)
print(cities["Germany"][1]) # Hamburg

# Nesting a Dictionary in a Dictionary
movies_rating = {
  "The Phantom Menace": {
	  "main_planets": ["Tatooine", "Naboo", "Coruscant"],
	  "score": 8.2
  },
  "The Revenge of the Sith": {
	  "main_planets": ["Mustafar", "Kashyyyk", "Coruscant"],
		"score": 9.3
	 }
}
print(movies_rating)
print(movies_rating["The Revenge of the Sith"]["main_planets"][1]) # Kashyyyk
{'Mexico': 'Mexico City', 'France': 'Paris', 'Germany': 'Berlin'}
Mexico City
[{'name': 'Anakin Skywalker', 'forceSensitive': True, 'kids': ['Luke', 'Leia']}, {'name': 'Bo-Katan Kryze', 'forceSensitive': False, 'kids': None}]
Bo-Katan Kryze
{'France': ['Paris', 'Lille', 'Dijon'], 'Germany': ['Berlin', 'Hamburg', 'Stuttgart']}
Hamburg
{'The Phantom Menace': {'main_planets': ['Tatooine', 'Naboo', 'Coruscant'], 'score': 8.2}, 'The Revenge of the Sith': {'main_planets': ['Mustafar', 'Kashyyyk', 'Coruscant'], 'score': 9.3}}
Kashyyyk

Etiquetas relacionadas:
Arriba