informatica:programacion:cursos:programacion_desde_cero_con_python
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| informatica:programacion:cursos:programacion_desde_cero_con_python [2026/10/31 20:48] – [6. Control de versiones, terminal y empaquetado] tempwin | informatica:programacion:cursos:programacion_desde_cero_con_python [2026/11/01 01:22] (actual) – [Bloque I. Empezar a programar] tempwin | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| ====== Curso de programación desde cero con Python ====== | ====== Curso de programación desde cero con Python ====== | ||
| - | El curso estará | + | Curso orientado a personas sin experiencia previa en programación. |
| - | + | ||
| - | Seguiremos esta secuencia de aprendizaje: | + | |
| - | + | ||
| - | Comprender → observar → predecir → ejecutar → modificar → crear → revisar. | + | |
| ===== Índice ===== | ===== Índice ===== | ||
| Línea 26: | Línea 22: | ||
| * Instalación en Windows y Linux. | * Instalación en Windows y Linux. | ||
| * Editores de código e IDE. | * Editores de código e IDE. | ||
| - | * Archivos .py y organización del trabajo. | + | * Archivos |
| * Primer programa. | * Primer programa. | ||
| * Ejecución desde el editor y la terminal. | * Ejecución desde el editor y la terminal. | ||
| Línea 58: | Línea 54: | ||
| **Módulo 5. [[.: | **Módulo 5. [[.: | ||
| - | * print() e input(). | + | * '' |
| * Conversión y validación de datos. | * Conversión y validación de datos. | ||
| * Cadenas y concatenación. | * Cadenas y concatenación. | ||
| Línea 70: | Línea 66: | ||
| * Condiciones. | * Condiciones. | ||
| - | * if, elif y else. | + | * '' |
| * Condiciones compuestas. | * Condiciones compuestas. | ||
| * Valores verdaderos y falsos. | * Valores verdaderos y falsos. | ||
| * Condiciones anidadas. | * Condiciones anidadas. | ||
| * Expresiones condicionales. | * Expresiones condicionales. | ||
| - | * match y case. | + | * '' |
| * Casos límite y errores lógicos. | * Casos límite y errores lógicos. | ||
| Línea 81: | Línea 77: | ||
| * Repetición de instrucciones. | * Repetición de instrucciones. | ||
| - | * while y for. | + | * '' |
| - | * range(). | + | * '' |
| * Contadores y acumuladores. | * Contadores y acumuladores. | ||
| - | * break y continue. | + | * '' |
| * Bucles anidados. | * Bucles anidados. | ||
| - | * Cláusula else de los bucles. | + | * Cláusula |
| * Bucles infinitos. | * Bucles infinitos. | ||
| * Elección de estructuras de repetición. | * Elección de estructuras de repetición. | ||
| Línea 308: | Línea 304: | ||
| ===== Recursos ===== | ===== Recursos ===== | ||
| - | |||
| - | |||
| * **Documentación oficial de Python 3.15 (inglés): | * **Documentación oficial de Python 3.15 (inglés): | ||
| Línea 319: | Línea 313: | ||
| > **[BUENA PRÁCTICA]** La documentación oficial permite cambiar de versión desde el selector de la esquina superior izquierda. Si trabajas con una versión distinta de 3.15 (por ejemplo, 3.12 o 3.13), asegúrate de consultar la documentación de **tu** versión, no la más reciente. | > **[BUENA PRÁCTICA]** La documentación oficial permite cambiar de versión desde el selector de la esquina superior izquierda. Si trabajas con una versión distinta de 3.15 (por ejemplo, 3.12 o 3.13), asegúrate de consultar la documentación de **tu** versión, no la más reciente. | ||
| - | ### 2. PEPs fundamentales | + | |
| - | + | * Python Weekly (boletín de novedades): https:// | |
| - | Las PEPs (*Python Enhancement Proposals*) son los documentos que definen el lenguaje, sus convenciones y sus procesos. Estas son las que se han citado en el curso: | + | * PyCoder' |
| - | + | * Awesome Python (lista curada de bibliotecas y recursos): https:// | |
| - | #### 2.1. Estilo y documentación | + | * Python Discourse (foro oficial de la comunidad): https:// |
| - | + | ||
| - | - **PEP 8 – Style Guide for Python Code:** [https:// | + | |
| - | - **PEP 257 – Docstring Conventions: | + | |
| - | - **PEP 20 – The Zen of Python:** [https:// | + | |
| - | + | ||
| - | #### 2.2. Sistema de tipos | + | |
| - | + | ||
| - | - **PEP 484 – Type Hints:** [https:// | + | |
| - | - **PEP 557 – Data Classes:** [https:// | + | |
| - | - **PEP 649 – Deferred Evaluation Of Annotations: | + | |
| - | - **PEP 661 – Sentinel Values:** [https:// | + | |
| - | - **PEP 747 – Annotating Type Forms (`TypeForm`): | + | |
| - | - **PEP 781 – Make `TYPE_CHECKING` a built-in constant:** [https:// | + | |
| - | + | ||
| - | #### 2.3. Novedades de Python 3.15 | + | |
| - | + | ||
| - | - **PEP 686 – Make UTF-8 mode default:** [https:// | + | |
| - | - **PEP 703 – Making the Global Interpreter Lock Optional (free-threading): | + | |
| - | - **PEP 798 – Unpacking in Comprehensions: | + | |
| - | - **PEP 810 – Explicit lazy imports:** [https:// | + | |
| - | - **PEP 814 – Add `frozendict` built-in type:** [https:// | + | |
| - | + | ||
| - | #### 2.4. Empaquetado y estructura de proyectos | + | |
| - | + | ||
| - | - **PEP 518 – Specifying Minimum Build System Requirements (`pyproject.toml`): | + | |
| - | - **PEP 621 – Storing project metadata in `pyproject.toml`: | + | |
| - | - **PEP 249 – Python Database API Specification v2.0:** [https:// | + | |
| - | + | ||
| - | #### 2.5. Otros patrones y protocolos | + | |
| - | + | ||
| - | - **PEP 634 – Structural Pattern Matching (`match`/ | + | |
| - | - **PEP 654 – Exception Groups and `except*`: | + | |
| - | - **PEP 791 – `math.integer`: | + | |
| - | + | ||
| - | --- | + | |
| - | + | ||
| - | ### 3. Biblioteca estándar por módulos | + | |
| - | + | ||
| - | Cada módulo de la biblioteca estándar tiene su propia página de documentación. Estas son las que se han utilizado en el curso: | + | |
| - | + | ||
| - | #### 3.1. Fundamentos del lenguaje | + | |
| - | + | ||
| - | - **Tipos incorporados (`str`, `list`, `dict`, `set`, `tuple`, `range`, etc.):** [https:// | + | |
| - | - **Funciones incorporadas (`print`, `input`, `len`, `type`, `isinstance`, | + | |
| - | - **Mini-lenguaje de formato (f-strings): | + | |
| - | + | ||
| - | #### 3.2. Módulos de uso general | + | |
| - | + | ||
| - | - **`datetime` – Fechas y horas:** [https:// | + | |
| - | - **`statistics` – Funciones estadísticas: | + | |
| - | - **`math` – Funciones matemáticas: | + | |
| - | - **`math.integer` – Funciones matemáticas para enteros (novedad 3.15):** [https:// | + | |
| - | - **`random` – Números pseudoaleatorios: | + | |
| - | - **`secrets` – Números aleatorios seguros:** [https:// | + | |
| - | - **`argparse` – Interfaz de línea de comandos:** [https:// | + | |
| - | - **`os` – Interfaz con el sistema operativo (`os.environ`): | + | |
| - | - **`pathlib` – Rutas orientadas a objetos:** [https:// | + | |
| - | - **`re` – Expresiones regulares: | + | |
| - | - **`urllib.request` – Apertura de URLs:** [https:// | + | |
| - | - **`sqlite3` – Base de datos SQLite:** [https:// | + | |
| - | - **`csv` – Lectura y escritura de CSV:** [https:// | + | |
| - | - **`json` – Codificación y decodificación JSON:** [https:// | + | |
| - | - **`shelve` – Persistencia de objetos Python:** [https:// | + | |
| - | - **`copy` – Copia superficial y profunda:** [https:// | + | |
| - | - **`logging` – Registro de eventos:** [https:// | + | |
| - | - **`dataclasses` – Clases de datos:** [https:// | + | |
| - | - **`typing` – Anotaciones de tipos:** [https:// | + | |
| - | - **`unittest` – Marco de pruebas unitarias: | + | |
| - | - **`unittest.mock` – Objetos simulados para pruebas:** [https:// | + | |
| - | - **`pdb` – Depurador de Python:** [https:// | + | |
| - | - **`traceback` – Formato de los mensajes de error:** [https:// | + | |
| - | - **`__main__` – Entorno de código de máximo nivel:** [https:// | + | |
| - | - **Advertencias de seguridad (*Security Considerations*): | + | |
| - | + | ||
| - | > **[AMPLIACIÓN]** Para explorar la biblioteca estándar completa, el **índice alfabético** es la mejor herramienta: | + | |
| - | + | ||
| - | --- | + | |
| - | + | ||
| - | ### 4. Referencia del lenguaje y modelo de datos | + | |
| - | + | ||
| - | - **Modelo de datos (métodos especiales, protocolos): | + | |
| - | - **Expresiones (operadores, | + | |
| - | - **Sentencias compuestas (`if`, `for`, `while`, `try`, `match`, `with`):** [https:// | + | |
| - | - **Sistema de importación: | + | |
| - | - **Prioridad de operadores: | + | |
| - | + | ||
| - | --- | + | |
| - | + | ||
| - | + | ||
| - | * **Pro Git (libro gratuito en español): | + | |
| - | * **`venv` – Creación de entornos virtuales: | + | |
| - | * **`pip` – Instalador de paquetes:** [https:// | + | |
| - | * **Real Python (tutoriales y artículos): | + | |
| - | | + | |
| - | | + | |
| - | | + | |
| - | | + | |
informatica/programacion/cursos/programacion_desde_cero_con_python.1793476138.txt.gz · Última modificación: por tempwin
