01. Introducción

Python es un lenguaje de programación versátil, fácil de aprender y altamente utilizado en diversas áreas como análisis de datos, desarrollo web, inteligencia artificial y más.

Ventajas clave:

Primeros pasos:

  1. Descarga Python desde python.org.
  2. Configura un entorno: VSCode o PyCharm son excelentes opciones.
  3. Prueba el código básico: print("¡Hola, Mundo!").

02. Estructuras de Control

Las estructuras de control permiten tomar decisiones o ejecutar bloques de código de manera repetitiva.

Condicionales:

Usa if, elif y else para tomar decisiones basadas en condiciones.


# Ejemplo: Clasificar edades
edad = 18
if edad >= 18:
    print("Eres mayor de edad.")
elif edad == 17:
    print("Estás a punto de ser mayor.")
else:
    print("Eres menor de edad.")
        

Bucles:

Usa for para iterar sobre datos y while para bucles condicionales.


# Iterar con for
for numero in range(5):
    print(f"Iteración: {numero}")

# Bucle while
contador = 0
while contador < 3:
    print(f"Contando: {contador}")
    contador += 1
        

03. Tipos y Estructuras de Datos

Organiza y manipula datos de manera eficiente con los tipos y estructuras básicos de Python.

Tipos básicos:

Estructuras de datos:

04. Funciones

Las funciones te permiten dividir tu código en bloques reutilizables para realizar tareas específicas.

Definición básica:


# Ejemplo de función
def saludar(nombre):
    return f"Hola, {nombre}!"

# Llamar a la función
print(saludar("Leuris"))
        

Parámetros y argumentos:

Puedes pasar múltiples parámetros y utilizar valores predeterminados.


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

print(suma(5))  # Usa b=0 por defecto
print(suma(5, 7))  # Sobrescribe b con 7
        

05. Operadores

Python ofrece operadores para cálculos matemáticos, comparaciones y lógica.

Categorías principales:

Ejemplo:


a = 10
b = 3
print(a + b)  # Suma
print(a > b and b > 1)  # Operador lógico
        

06. Programación Orientada a Objetos

La programación orientada a objetos (POO) te permite organizar el código en clases y objetos para una mayor modularidad y reutilización.

Clases y objetos:

Una clase es como un molde para crear objetos (instancias). Los objetos tienen atributos (propiedades) y métodos (funciones).


class Persona:
    def __init__(self, nombre, edad):
        self.nombre = nombre
        self.edad = edad

    def saludar(self):
        return f"Hola, soy {self.nombre} y tengo {self.edad} años."

# Crear un objeto
persona1 = Persona("Leuris", 17)
print(persona1.saludar())
        

Herencia:

La herencia permite crear nuevas clases basadas en clases existentes. Las clases derivadas pueden acceder a métodos y atributos de la clase base.


class Estudiante(Persona):
    def __init__(self, nombre, edad, carrera):
        super().__init__(nombre, edad)
        self.carrera = carrera

    def estudiar(self):
        return f"Estoy estudiando {self.carrera}."

# Crear objeto de la clase derivada
estudiante1 = Estudiante("Juan", 20, "Ingeniería")
print(estudiante1.saludar())
print(estudiante1.estudiar())
        

07. Manejo de Excepciones

Las excepciones permiten manejar errores de manera controlada y evitar que el programa se detenga inesperadamente.

Bloques try-except:

Usamos try para intentar ejecutar un bloque de código y except para manejar errores.


try:
    resultado = 10 / 0  # División por cero
except ZeroDivisionError:
    print("¡Error! No se puede dividir por cero.")
        

Excepciones personalizadas:

Puedes definir tus propias excepciones usando clases.


class MiExcepcion(Exception):
    pass

try:
    raise MiExcepcion("Este es un error personalizado.")
except MiExcepcion as e:
    print(f"Se ha capturado un error: {e}")
        

08. Manipulación de Archivos

Python permite leer y escribir archivos de manera fácil, ya sea en formato texto o binario.

Abrir y leer archivos:

Usamos open() para abrir un archivo, y luego usamos read() o readlines() para leer su contenido.


# Leer un archivo de texto
with open('archivo.txt', 'r') as archivo:
    contenido = archivo.read()
    print(contenido)
        

Escribir en archivos:

Usamos el modo 'w' para sobrescribir o 'a' para añadir al final de un archivo.


# Escribir en un archivo
with open('archivo.txt', 'w') as archivo:
    archivo.write("Nuevo contenido")
        

09. Módulos y Paquetes

Los módulos permiten organizar el código en archivos separados. Un paquete es una colección de módulos relacionados.

Importar módulos:

Puedes importar módulos estándar de Python o módulos que hayas creado.


# Importar módulo estándar
import math
print(math.sqrt(16))

# Importar funciones específicas de un módulo
from math import sqrt
print(sqrt(16))
        

Crear un módulo:

Si creas un archivo con funciones o clases, puedes importarlo como un módulo.


# En archivo mi_modulo.py
def saludar(nombre):
    return f"Hola, {nombre}!"

# En el archivo principal
import mi_modulo
print(mi_modulo.saludar("Leuris"))
        

10. Mejores Bibliotecas

Python cuenta con una gran cantidad de bibliotecas que facilitan tareas específicas, desde análisis de datos hasta desarrollo web. Aquí te mostramos algunas de las mejores y más populares.

Pandas:

Es la biblioteca más utilizada para el análisis de datos. Facilita la manipulación de datos tabulares (como hojas de cálculo).


import pandas as pd
df = pd.read_csv('datos.csv')
print(df.head())
        

NumPy:

Se utiliza para realizar cálculos matemáticos y trabajar con matrices y arrays multidimensionales.


import numpy as np
array = np.array([1, 2, 3])
print(array)
        

Flask:

Es un microframework para desarrollar aplicaciones web ligeras y sencillas en Python.


from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return '¡Hola, Mundo!'

if __name__ == "__main__":
    app.run(debug=True)
        

TensorFlow:

Una biblioteca para crear redes neuronales y modelos de inteligencia artificial.


import tensorflow as tf
modelo = tf.keras.Sequential([tf.keras.layers.Dense(10)])
modelo.compile(optimizer='adam', loss='mean_squared_error')
        

Requests:

Biblioteca para trabajar con solicitudes HTTP y APIs de manera sencilla.


import requests
response = requests.get('https://api.github.com')
print(response.json())
        

11. Proyecto Final

Al final del curso, pondrás en práctica todo lo aprendido creando un proyecto desde cero. Puedes crear una aplicación web, una herramienta de análisis de datos o cualquier proyecto que te motive.

Ejemplo de proyecto:

Crea un sistema de gestión de tareas donde puedas agregar, eliminar y actualizar tareas, y almacenar todo en una base de datos.

Pasos para el proyecto:

  1. Define los requisitos de tu proyecto.
  2. Organiza el código en módulos y clases.
  3. Usa bases de datos como SQLite o MongoDB si es necesario.
  4. Prueba tu aplicación y ajusta cualquier error.