Python


Fundamentos de la Programacion


Operadores


Operadores Aritméticos

Se usan para realizar operaciones matemáticas básicas. Incluyen + (suma), - (resta), * (multiplicacion), / (division), // (division entera), % (modulo: devuelve el residuo de una division), y ** (potenciacion).

Operadores de Comparacion

Comparan dos valores y devuelven un valor booleano (True o False). Incluyen == (igual a), != (diferente de), > (mayor que), < (menor que), >= (mayor o igual que), y <= (menor o igual que).

Operadores Logicos

Se usan para combinar condiciones. Incluyen and (y), or (o), y not (no).




Variables y Tipos de Datos


Se utilizan para almacenar datos que pueden ser usados y manipulados en un programa.





Estructuras de Datos


Listas

Son colecciones ordenadas de elementos que pueden ser de cualquier tipo. Se crean usando corchetes [] y se pueden modificar después de su creacion.


Métodos de listas en Python

Python tiene métodos utiles para manipular elementos en listas.
A continuacion una breve descripcion y ejemplos de algunos de los métodos más comunes:


append(x)

Agrega un elemento al final de la lista.

        lista = [1, 2, 3]
        lista.append(4)
        print(lista)  # Salida: [1, 2, 3, 4]

extend(iterable)

Extiende la lista añadiendo todos los elementos del iterable.

        lista = [1, 2, 3]
        nueva_lista = [4, 5]
        lista.extend(nueva_lista)
        print(lista)  # Salida: [1, 2, 3, 4, 5]

insert(i, x)

Inserta un elemento en una posicion especifica.

        lista = [1, 2, 3]
        lista.insert(1, 4)
        print(lista)  # Salida: [1, 4, 2, 3]

remove(x)

Elimina la primera ocurrencia del elemento x.

        lista = [1, 2, 3, 2]
        lista.remove(2)
        print(lista)  # Salida: [1, 3, 2]

pop([i])

Elimina y devuelve el elemento en la posicion i. Si no se especifica i, elimina y devuelve el ultimo elemento.

        lista = [1, 2, 3]
        elemento = lista.pop()
        print(elemento)  # Salida: 3
        print(lista)  # Salida: [1, 2]

clear()

Elimina todos los elementos de la lista.

        lista = [1, 2, 3]
        lista.clear()
        print(lista)  # Salida: []

index(x[, start[, end]])

Devuelve el indice de la primera ocurrencia de x.

        lista = [1, 2, 3, 2]
        indice = lista.index(2)
        print(indice)  # Salida: 1

count(x)

Devuelve el numero de veces que x aparece en la lista.

        lista = [1, 2, 3, 2, 2]
        conteo = lista.count(2)
        print(conteo)  # Salida: 3

sort(key=None, reverse=False)

Ordena la lista in-place. Ordena por defecto en orden ascendente. Se puede especificar una funcion de clave y un orden inverso.

        def ordenar_por_inverso(x):
            return -x

        lista = [3, 1, 2]
        lista.sort(key=ordenar_por_inverso, reverse=True)
        print(lista)  # Salida: [3, 2, 1]

reverse()

Invierte el orden de los elementos de la lista in-place.

        lista = [1, 2, 3]
        lista.reverse()
        print(lista)  # Salida: 

Slicing (Corte) en Listas

El slicing en Python es una forma de obtener partes especificas de una lista. Imagina que tienes una lista como una fila de bloques de construccion y quieres tomar solo algunos bloques.


Ejemplo de Slicing

Supongamos que tienes esta lista de numeros:

numeros = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    

Slicing con Pasos

Puedes usar slicing para saltar elementos usando un tercer valor llamado “paso”.




Control de Flujo


Condicionales

Estructura if, elif, else: Las declaraciones condicionales permiten ejecutar codigo basado en ciertas condiciones.


Condicionales Anidadas

Las condiciones pueden anidarse dentro de otras condiciones para evaluar multiples criterios.


Uso de Operadores Logicos en Condicionales

Los operadores and, or, y not se pueden usar para combinar multiples condiciones en una declaracion if.




Bucles


Ciclo while

Un bucle while repite un bloque de codigo mientras una condicion sea verdadera. Es util cuando no se sabe de antemano cuántas veces se debe repetir el bucle.

Ejemplo básico de ciclo while:

contador = 1
    while contador <= 5:
        print(contador)
        contador += 1

Este bucle imprimirá los numeros del 1 al 5. La variable contador se incrementa en 1 en cada iteracion.


Ciclo while con una condicion de salida

El bucle while también se puede utilizar con una condicion de salida para detenerse cuando se alcanza un cierto estado.

Ejemplo de ciclo while con una condicion de salida:

respuesta = ""
    while respuesta != "salir":
        respuesta = input("Escribe 'salir' para terminar: ")
        print("Escribiste:", respuesta)

Este bucle pedirá al usuario que ingrese un texto hasta que escriba "salir". En cada iteracion, se imprime lo que el usuario escribio.


Ciclo for

Un bucle for se utiliza para iterar sobre una secuencia (como una lista o un rango de numeros). A diferencia del ciclo while, el numero de iteraciones está determinado por la cantidad de elementos en la secuencia.

Ejemplo básico de ciclo for:

for i in range(5):
        print(i)

Este bucle imprimirá los numeros del 0 al 4.




Funciones


Son bloques de codigo reutilizables que realizan una tarea especifica. Se definen usando la palabra clave def seguida del nombre de la funcion y paréntesis. Dentro de los paréntesis, se pueden incluir parámetros, que son variables que la funcion puede recibir como entrada.

Ejemplo de una funcion simple:

def saludar(nombre):
        print(f"Hola, {nombre}!")

    saludar("Steve")

Este codigo define una funcion llamada saludar que toma un parámetro nombre e imprime un mensaje de saludo. Luego, la funcion se llama con el argumento "Steve", y se imprimirá Hola, Steve!.


Funciones con valor de retorno

Las funciones pueden devolver un valor usando la palabra clave return. Esto permite que la funcion envie datos de vuelta al lugar donde fue llamada. Utilizar funciones con valor de retorno es util cuando necesitas el resultado de un cálculo o una operacion para usarlo en otro lugar del programa.

Ejemplo de una funcion con valor de retorno:

def suma(a, b):
        return a + b

    resultado = suma(3, 5)
    print(resultado)

Este codigo define una funcion suma que toma dos parámetros, a y b, y devuelve su suma. El resultado de la funcion se almacena en la variable resultado, que luego se imprime (mostrará 8).


Funciones con multiples valores de retorno

Las funciones también pueden devolver multiples valores utilizando tuplas. Esto es util cuando necesitas devolver más de un valor desde una funcion.

Ejemplo de una funcion que devuelve multiples valores:

def operaciones(a, b):
        suma = a + b
        resta = a - b
        return suma, resta

    resultado_suma, resultado_resta = operaciones(10, 5)
    print("Suma:", resultado_suma)
    print("Resta:", resultado_resta)

Este codigo define una funcion operaciones que toma dos parámetros y devuelve la suma y la resta de esos parámetros. Los resultados se almacenan en dos variables separadas y luego se imprimen.