Guía de estudio "Python Definitivo" para principiantes y profesionales. 🐍 🐍 🐍
print("Guía de estudio 'Python Definitivo'")English | 한국어 | 繁体中文 | Español | Deutsch | Français | हिन्दी | Português - Brasil
Creé este repositorio de GitHub para compartir lo que he aprendido sobre Python durante más de 5 años usándolo como graduado de universidad, empleado en grandes empresas y como contribuidor de código abierto en repositorios como Celery y Full Stack Python. Espero ver a más personas aprendiendo Python y persiguiendo su pasión a través de él. 🎓
Estos son los objetivos principales de esta guía:
🏆 Servir como un recurso para principiantes de Python que prefieren aprender de forma práctica.
Este repositorio contiene una colección de módulos independientes que pueden ejecutarse en
un IDE como PyCharm y en el navegador, como
Replit. Incluso una terminal sencilla funcionará con los ejemplos.
La mayoría de las líneas de código tienen comentarios útiles que guían al lector paso a paso.
Se anima a los usuarios a modificar el código fuente en cualquier parte siempre y cuando las rutinas
principales (main) no se eliminen y los programas se ejecuten con éxito tras cada cambio (ver runner.py).
🏆 Servir como una guía pura para aquellos que quieren reforzar los conceptos base de
Python. Se utilizan sólo las librerías integradas para que
estos conceptos puedan adquirirse sin el esfuerzo de aprender conocimientos de dominios específicos.
Por ello no se han instalado librerías y entornos de código abierto populares (como sqlalchemy,
requests, pandas). No obstante, leer el código fuente de estos frameworks es inspirador y altamente
recomendado si tu objetivo es convertirte en un verdadero
Pythonista.
Haz clic en la imagen de arriba para crear un ambiente de trabajo en el navegador sin necesidad de tener Git y Python instalados en tu ordenador local. Si estos requisitos ya se cumplen, puedes clonar el repositorio directamente.
Una vez que el repositorio sea accesible, estás listo para aprender de los módulos independientes. Para aprender el máximo de cada módulo, lee el código del módulo y ejecútalo. Hay dos maneras de ejecutar los módulos:
- Ejecuta un solo módulo:
python ultimatepython/syntax/variable.py - Ejecuta todos los módulos:
python runner.py
📚 = Recurso externo, 🍰 = Tema principiante, 🤯 = Tema avanzado
- Sobre Python
- Resumen: ¿Qué es Python? ( 📚, 🍰 )
- Filosofía de diseño: El Zen de Python ( 📚 )
- Guía de estilos: Guía de estilos para código de Python ( 📚, 🤯 )
- Modelo de datos: Modelo de datos ( 📚, 🤯 )
- Librería estándar: La librería estándar de Python ( 📚, 🤯 )
- Funciones integradas: Funciones integradas ( 📚 )
- Sintaxis
- Variables: Literales integrados ( 🍰 )
- Expresiones: Operaciones numéricas ( 🍰 )
- Bit a bit: Operadores bit a bit ( 🍰 ), Complemento a uno/dos ( 📚 )
- Condicionales: if | if-else | if-elif-else ( 🍰 )
- Iteraciones: for-loop | while-loop ( 🍰 )
- Funciones: def | lambda ( 🍰 )
- Operador morsa: Expresiones de asignación := ( 🤯 )
- Aplicación de argumentos: Solo posicional / | Solo palabra clave * ( 🤯 )
- Estructura de datos
- Lista: Operaciones con listas ( 🍰 )
- Tupla: Operaciones con tuplas
- Set: Operaciones con sets
- Diccionario: Operaciones con dicts ( 🍰 )
- Unión de diccionarios: Fusión de diccionarios | y |= ( 🤯 )
- Comprensión: list | tuple | set | dict
- Cadena: Operaciones con strings ( 🍰 )
- Deque: deque ( 🤯 )
- Namedtuple: namedtuple ( 🤯 )
- Defaultdict: defaultdict ( 🤯 )
- Herramientas de iteradores: Herramientas de iteradores ( 🤯 )
- Complejidad de tiempo: Operaciones de cPython ( 📚, 🤯 )
- Clases
- Clase básica: Definición de básica ( 🍰 )
- Herencia: Herencia ( 🍰 )
- Clase abstracta: Definición de abstracta
- Clase de excepción: Definición de excepción
- Clase iteradora: Definición de iteradora | yield ( 🤯 )
- Encapsulación: Definición de encapsulación
- Avanzado
- Decorador: Definición de decorador | wraps ( 🤯 )
- Manejo de archivos: Manejo de archivos ( 🤯 )
- Gestor de contexto: Gestores de contexto ( 🤯 )
- Orden de resolución de método (MRO por sus siglas en inglés): mro ( 🤯 )
- Mixin: Definición de Mixin ( 🤯 )
- Metaclase: Definición de metaclase ( 🤯 )
- Hilos: ThreadPoolExecutor ( 🤯 )
- Asyncio: async | await ( 🤯 )
- Referencias débiles: weakref ( 🤯 )
- Referencia: cProfile | pstats ( 🤯 )
- Mocking: MagicMock | PropertyMock | patch ( 🤯 )
- Expresiones regulares: search | findall | match | fullmatch ( 🤯 )
- Formatos de datos: json | xml | csv ( 🤯 )
- Fecha y hora: datetime | timezone ( 🤯 )
- Coincidencia de patrones: match | case ( 🤯 )
👔 = Recurso de entrevista, 🧪 = Ejemplos de código, 🧠 = Ideas para proyecto
Sigue aprendiendo leyendo otros buenos recursos.
- TheAlgorithms/Python ( 👔 , 🧪 )
- faif/python-patterns ( 👔 , 🧪 )
- geekcomputers/Python ( 🧪 )
- trekhleb/homemade-machine-learning ( 🧪 )
- karan/Projects ( 🧠 )
- MunGell/awesome-for-beginners ( 🧠 )
- vinta/awesome-python
- academic/awesome-datascience
- josephmisiti/awesome-machine-learning
- ZuzooVn/machine-learning-for-software-engineers
- 30-seconds/30-seconds-of-python ( 🧪 )
- ml-tooling/best-of-python
- practical-tutorials/project-based-learning
- freeCodeCamp/freeCodeCamp ( 👔 )
- microsoft/ML-For-Beginners ( 🧪 )
- microsoft/Data-Science-For-Beginners ( 🧪 )
- Avik-Jain/100-Days-Of-ML-Code ( 🧪 )
Proyectos que he creado con Python que muestran lo que puedes crear después de aprender estos conceptos:
- huangsam/chowist ( 🧪 )
- huangsam/githooks ( 🧪 )
- huangsam/ragchain ( 🧪 )
- huangsam/mailprune ( 🧪 )
Continua practicando para que no se oxiden tus habilidades de programación.
- codechef.com ( 👔 )
- codeforces.com
- codementor.io ( 🧠 )
- coderbyte.com ( 👔 )
- codewars.com
- exercism.io
- geeksforgeeks.org ( 👔 )
- hackerearth.com
- hackerrank.com ( 👔 )
- kaggle.com ( 🧠 )
- labex.io( 🧪 )
- leetcode.com ( 👔 )
- projecteuler.net
- replit.com
- w3schools.com ( 🧪 )
- teclado.com ( 👔 )
- fullstakpython.org ( 🧪 )
