Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


PROGRAMACIÓN - APRENDE PYTHON, Apuntes de Programación Informática

Domina Python desde cero hasta nivel experto con estos apuntes completos. Aprende todo lo que necesitas sobre sintaxis, estructuras de datos, programación orientada a objetos, bibliotecas populares como NumPy, Pandas y Matplotlib, así como herramientas avanzadas como Flask y Django. Con ejemplos prácticos y explicaciones claras, estos apuntes son perfectos para quienes desean aprender o mejorar sus habilidades en programación con Python.

Tipo: Apuntes

2023/2024

A la venta desde 27/11/2024

mayra-gutierrez-cordoma
mayra-gutierrez-cordoma 🇦🇷

5 documentos

1 / 15

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Python
1. Introducción a Python
1.1. ¿Qué es Python?
Python es un lenguaje de programación de alto nivel, interpretado, y de propósito general. Fue
creado por Guido van Rossum y lanzado por primera vez en 1991. Es conocido por su sintaxis
sencilla y legibilidad del código, lo que hace que sea muy accesible para principiantes.
1.2. Características Principales de Python
Sintaxis clara y legible: El código es fácil de leer y escribir, lo que reduce la complejidad.
Lenguaje interpretado: No necesita ser compilado, lo que facilita la depuración.
Tipado dinámico: Las variables no requieren declaración de tipo.
Multiplataforma: Python funciona en varios sistemas operativos como Windows, Linux y
macOS.
Ampliamente utilizado: Python se utiliza en desarrollo web, ciencia de datos, inteligencia
artificial, automatización, análisis de datos, y más.
2. Sintaxis Básica de Python
2.1. Instalación y Entorno de Desarrollo
Para empezar a programar en Python, necesitas tener Python instalado. Puedes descargarlo desde
python.org. El IDLE (integrated development and learning environment) es un entorno básico que
viene con la instalación de Python, pero también puedes usar otros editores de código como VS
Code, PyCharm, o Jupyter Notebooks.
2.2. Primer Programa en Python
Un programa básico en Python es simplemente:
print("¡Hola, Mundo!")
Este código imprimirá en la consola: ¡Hola, Mundo!
2.3. Comentarios
Los comentarios en Python se agregan utilizando el signo #. Python no ejecuta los comentarios,
son solo para el programador.
# Este es un comentario
print("Hola, Mundo!")# Esto imprime un mensaje
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Vista previa parcial del texto

¡Descarga PROGRAMACIÓN - APRENDE PYTHON y más Apuntes en PDF de Programación Informática solo en Docsity!

Python

1. Introducción a Python

1.1. ¿Qué es Python?

Python es un lenguaje de programación de alto nivel, interpretado, y de propósito general. Fue creado por Guido van Rossum y lanzado por primera vez en 1991. Es conocido por su sintaxis sencilla y legibilidad del código, lo que hace que sea muy accesible para principiantes.

1.2. Características Principales de Python

● Sintaxis clara y legible: El código es fácil de leer y escribir, lo que reduce la complejidad. ● Lenguaje interpretado: No necesita ser compilado, lo que facilita la depuración. ● Tipado dinámico: Las variables no requieren declaración de tipo. ● Multiplataforma: Python funciona en varios sistemas operativos como Windows, Linux y macOS. ● Ampliamente utilizado: Python se utiliza en desarrollo web, ciencia de datos, inteligencia artificial, automatización, análisis de datos, y más.

2. Sintaxis Básica de Python

2.1. Instalación y Entorno de Desarrollo

Para empezar a programar en Python, necesitas tener Python instalado. Puedes descargarlo desde python.org. El IDLE (integrated development and learning environment) es un entorno básico que viene con la instalación de Python, pero también puedes usar otros editores de código como VS Code, PyCharm, o Jupyter Notebooks.

2.2. Primer Programa en Python

Un programa básico en Python es simplemente: print("¡Hola, Mundo!") Este código imprimirá en la consola: ¡Hola, Mundo!

2.3. Comentarios

Los comentarios en Python se agregan utilizando el signo #. Python no ejecuta los comentarios, son solo para el programador.

Este es un comentario

print("Hola, Mundo!") # Esto imprime un mensaje

3. Variables y Tipos de Datos

3.1. Declaración de Variables

En Python, no es necesario declarar el tipo de la variable. Python lo infiere automáticamente. x = 10 # Un número entero nombre = "Juan" # Una cadena de texto

3.2. Tipos de Datos Comunes

Python tiene varios tipos de datos, entre ellos: ● Números: ○ Enteros: x = 10 ○ Flotantes: y = 3. Cadenas de Texto (Strings): mensaje = "Hola, Mundo" Booleanos: es_verdadero = True es_falso = False Listas (Arrays): lista = [ 1 , 2 , 3 , 4 ] Tuplas: tupla = ( 1 , 2 , 3 ) Diccionarios: diccionario = {"clave": "valor", "nombre": "Juan"} Conjuntos:

i += 1

5. Funciones

5.1. Definición de Funciones

Las funciones en Python se definen utilizando la palabra clave def. Sintaxis: def nombre_de_funcion(parametros):

Código de la función

return valor Ejemplo: def saludar(nombre): return f"Hola, {nombre}!" mensaje = saludar("Juan") print(mensaje) # "Hola, Juan!"

5.2. Funciones con Valores Predeterminados

Puedes asignar valores predeterminados a los parámetros de las funciones. def saludar(nombre="Juan"): return f"Hola, {nombre}!" print(saludar()) # "Hola, Juan!" print(saludar("Carlos")) # "Hola, Carlos!"

6. Manejo de Excepciones

En Python, puedes manejar los errores o excepciones utilizando las estructuras try, except, else, y finally.

6.1. Sintaxis Básica de Excepciones

try:

Bloque de código donde podría ocurrir un error

except TipoDeError:

Código que maneja el error

else:

Código que se ejecuta si no ocurre un error

finally:

Código que siempre se ejecuta, ocurra o no un error

Ejemplo: try: numero = int(input("Introduce un número: ")) except ValueError: print("¡Eso no es un número!") else: print(f"El número es: {numero}") finally: print("Operación completada")

7. Programación Orientada a Objetos (OOP)

Python es un lenguaje orientado a objetos, lo que significa que puedes definir clases y objetos para organizar tu código.

7.1. Definición de Clases

Una clase es una plantilla para crear objetos (instancias). Una clase puede tener atributos (características) y métodos (funciones asociadas). Sintaxis: class NombreDeClase: def init(self, atributo1, atributo2): self.atributo1 = atributo self.atributo2 = atributo def metodo(self):

Código del método

Ejemplo: class Persona: def init(self, nombre, edad): self.nombre = nombre self.edad = edad def saludar(self):

def saludar(): print("¡Hola desde el módulo!") Archivo main.py: import mimodulo mimodulo.saludar() # ¡Hola desde el módulo!

9. Bibliotecas Populares de Python

9.1. NumPy

NumPy es una biblioteca fundamental para la computación científica en Python. Se utiliza para trabajar con arreglos multidimensionales y matrices. import numpy as np arreglo = np.array([ 1 , 2 , 3 ]) print(arreglo)

9.2. Pandas

Pandas es una biblioteca poderosa para la manipulación y análisis de datos, especialmente para trabajar con datos tabulares (como hojas de cálculo). import pandas as pd data = {'Nombre': ['Juan', 'Ana', 'Carlos'], 'Edad': [ 30 , 25 , 35 ]} df = pd.DataFrame(data) print(df)

9.3. Matplotlib

Matplotlib es una biblioteca para la creación de gráficos estáticos, animados e interactivos en Python. import matplotlib.pyplot as plt x = [ 1 , 2 , 3 , 4 ] y = [ 10 , 20 , 25 , 30 ] plt.plot(x, y) plt.show()

9.4. Flask y Django

Flask y Django son dos de los frameworks más populares para desarrollar aplicaciones web en Python. Flask es minimalista y flexible, mientras que Django es más robusto y completo. Flask: from flask import Flask app = Flask(name) @app.route("/") def hello(): return "¡Hola, Mundo!" if name == "main": app.run() Django:

Crear un proyecto Django

django-admin startproject mi_proyecto

10. Buenas Prácticas y Consejos para Ser un Experto

● Sigue el PEP 8: El PEP 8 es la guía de estilo para Python, que establece las convenciones para escribir código Python limpio y legible. ● Escribe pruebas: Utiliza bibliotecas como unittest o pytest para escribir pruebas unitarias que verifiquen el comportamiento de tu código. ● Usa entornos virtuales: Utiliza virtualenv o conda para crear entornos aislados para tus proyectos y evitar conflictos de dependencias. ● Optimiza el rendimiento: Conoce los generadores y expresiones de lista para manejar grandes volúmenes de datos de forma eficiente. ● Participa en proyectos de código abierto: Contribuir a proyectos de código abierto es una excelente forma de aprender de otros programadores y mejorar tus habilidades.

11. Generadores y Iteradores

11.1. Generadores

Un generador en Python es una función que devuelve un valor, pero en lugar de devolverlo de una vez como en las funciones tradicionales, devuelve un valor a la vez y conserva su estado entre cada llamada. Los generadores son útiles cuando trabajamos con grandes cantidades de datos, ya que no necesitan cargar todo en memoria de una vez. Sintaxis de un Generador: Se usa la palabra clave yield para devolver un valor sin perder el estado de la función.

print(i) Este código imprimirá: 1 2 3

12. Decoradores

12.1. ¿Qué son los Decoradores?

Los decoradores son una forma de modificar el comportamiento de una función o clase sin cambiar su código. Se utilizan para agregar funcionalidad adicional a las funciones o métodos. Sintaxis de un Decorador: Un decorador es una función que toma otra función como argumento y devuelve una nueva función que generalmente modifica el comportamiento de la original. def decorador(func): def nueva_funcion(): print("Antes de llamar a la función") func() print("Después de llamar a la función") return nueva_funcion @decorador def saludar(): print("¡Hola!") saludar() Este código imprimirá: Antes de llamar a la función ¡Hola! Después de llamar a la función Decoradores con Argumentos: Si quieres que tu decorador maneje argumentos, puedes hacerlo mediante funciones anidadas. def decorador_con_argumento(func): def nueva_funcion(*args, **kwargs):

print("Llamando a la función con argumentos:", args, kwargs) return func(*args, **kwargs) return nueva_funcion @decorador_con_argumento def saludar(nombre): print(f"¡Hola, {nombre}!") saludar("Juan") Este código imprimirá: Llamando a la función con argumentos: ('Juan',) {} ¡Hola, Juan!

13. Métodos Mágicos en Python

Los métodos mágicos (también conocidos como dunder methods, por los dos guiones bajos antes y después del nombre del método) son métodos predefinidos que permiten personalizar el comportamiento de las clases.

13.1. Ejemplos de Métodos Mágicos Comunes

init(self, ...): El inicializador, se llama cuando se crea una instancia de la clase. class Persona: def init(self, nombre, edad): self.nombre = nombre self.edad = edad str(self): Permite definir cómo se representa un objeto cuando se convierte en una cadena. class Persona: def init(self, nombre, edad): self.nombre = nombre self.edad = edad def str(self): return f"{self.nombre}, {self.edad} años"

def enter(self): print("Entrando en el contexto") return self def exit(self, tipo, valor, traceback): print("Saliendo del contexto") return False # Si se devuelve True, suprime las excepciones with MiGestorDeContexto() as gestor: print("Dentro del contexto") Este código imprimirá: Entrando en el contexto Dentro del contexto Saliendo del contexto

15. Patrones de Diseño en Python

Los patrones de diseño son soluciones reutilizables a problemas comunes en el diseño de software. A continuación, veremos algunos de los patrones más utilizados en Python.

15.1. Patrón Singleton

El patrón Singleton asegura que una clase tenga una única instancia a lo largo de la aplicación. Se puede lograr en Python de diferentes maneras, pero una forma común es utilizando una variable global. class Singleton: _instancia = None def new(cls): if not cls._instancia: cls._instancia = super().new(cls) return cls._instancia

Probar el Singleton

obj1 = Singleton() obj2 = Singleton() print(obj1 is obj2) # True

15.2. Patrón Fábrica (Factory Pattern)

El patrón Fábrica se usa cuando necesitas crear objetos sin especificar la clase exacta del objeto que se va a crear. class Animal: def hablar(self): pass class Perro(Animal): def hablar(self): return "Guau" class Gato(Animal): def hablar(self): return "Miau" class AnimalFactory: def crear_animal(self, tipo): if tipo == "Perro": return Perro() elif tipo == "Gato": return Gato()

Uso del patrón Fábrica

factory = AnimalFactory() animal = factory.crear_animal("Perro") print(animal.hablar()) # "Guau"

16. Optimización y Buenas Prácticas

16.1. Optimización de Código en Python

Cuando tu aplicación crece, es importante optimizar el código para mejorar el rendimiento. Algunos consejos incluyen: ● Evitar el uso innecesario de bucles anidados. ● Usar generadores y expresiones generadoras para ahorrar memoria. ● Usar map() y filter() para mejorar el rendimiento al trabajar con listas. ● Evitar copiar objetos grandes innecesariamente, en su lugar, pasa referencias.

16.2. Profiling y Análisis de Rendimiento

Para identificar cuellos de botella en tu código, puedes usar herramientas como el módulo cProfile: import cProfile def mi_funcion():