Temario del curso
1 - Python 3: Introducción y entornos
Objetivo
Al finalizar esta unidad, el alumno sabrá cuales son las cualidades de Python, podrá instalar Python en cualquier SO, y tendrá las capacidades para instalar y preparar un entorno de trabajo con Python en Visual Studio Code.
Contenido
Python 3: Introducción y entornos
Introducción
Sobre el curso
¿Qué es Python?
Características
Entorno para el trabajo con Python
Linux
Python en Windows
Intérprete de Python
Visual Studio Code
Instalación
Proceso de instalación en Linux
Proceso de instalación en Windows
Espacio de trabajo para Python 3
Extensiones para el desarrollo de Python
Iniciar un nuevo programa Python
Introducción del código Python
Running Python Code
Cómo vas a trabajar
Requisitos y nomenclaturas para ejecución de los ejercicios
Nombres de archivos
Reglas básicas
Resumen
2 - Conceptos básicos de programación en Python
Objetivo
Cuando finalices la unidad conocerás conceptos imprescindibles para empezar a aprender a programar, sabrás como utilizar los operadores y el concepto de variable, conocerás los elementos básicos del lenguaje, sabrás iniciar, trabajar y terminar sesiones interactivas de consola de Python y realizar un primer programa básico.
Contenido
Conceptos básicos de programación en Python
Definiciones y conceptos
Algoritmos
Diagramas de flujo
Pseudocódigo
Programador
Programa Informático
Diferencia entre algoritmo y programa informático
Tipos de lenguajes de programación
Bajo nivel
Alto nivel
Compiladores e intérpretes
Compiladores
Intérpretes
Python3: sesiones interactivas
Iniciar sesión interactiva
Finalizar una sesión interactiva
Operadores aritméticos
Sumas y restas
Multiplicación y división
Otros operadores
Precedencia de los operadores aritméticos
Operadores lógicos
Operadores de comparación
Tabla de todos los operadores aritméticos, lógicos y de comparación
Variables
Reglas y convención de nombres
Asignación compacta
Resumen
3 - Entrada, Salida y Tipos de Datos
Objetivo
Conocerás los tipos de datos para números y texto, además de trabajar con los métodos más importantes para enteros y cadenas.
Capacidad para introducir datos por pantalla y presentar los datos de los resultados.
Contenido
Entrada, salida y tipos de datos
Tipos de datos
Comentarios
Números
Operaciones
Algunos métodos para trabajar con números
Textos
Manipular textos
Print()
Print() -> Texto
Print() -> Números
Print() -> Números y Textos
Cadenas "f"
Input()
Ejercicio guiado 1
El problema
Paso 1: Abrir el programa
Paso 2: Crear archivo .py
Paso 3: Resolver el problema
Paso 4: Programar la solución
Paso 5: Ejecutar
Analizando el código
Ejercicio guiado 2
1.- Crear el archivo
2.- Resuelve el problema
3.- Programamos la solución
Analizando el código
Resumen
4 - Estructura de datos
Objetivo
Conocer y trabajar con las diferentes estructuras de datos dentro del lenguaje de programación, listas, tuplas diccionarios y sus métodos específicos.
Contenido
Estructura de datos
Listas
Slicing
Especificación de índices para manejo de los elementos de una lista
Funciones básicas para manejo de listas
Operadores para manejo de listas
Funciones especiales para manejo de listas
Tuplas
Slicing
Especificación de índices para manejo de los elementos de una tupla
Manejo de tuplas
Funciones especiales para manejo de tuplas
Operadores para manejo de tuplas
Diccionarios
Métodos para Diccionarios
Operadores de identidad
Resumen
5 - Control de flujo en Python I (if, elif, else)
Objetivo
Cuando finalices esta unidad podrás conocer y utilizar con soltura las estructuras de decisión en Python, condicionales, manejar los distintos tipos de datos y realizar programas sencillos.
Contenido
Control de flujo en Python I (if, elif, else)
Control de flujo
Estructuras de decisión
Identación
Ejecución condicionada de un bloque IF
Ejecución selectiva entre dos bloques de instrucciones IF - ELSE
Ejecución selectiva entre dos bloques de instrucciones IF - ELSE II. Decisiones anidadas
Decisiones consecutivas IF, ELIF y ELSE
Resumen
6 - Control de flujo en Python II (for - while)
Objetivo
Cuando finalices esta unidad podrás conocer y utilizar con soltura las estructuras de control en Python, bucles for y while manejar los distintos tipos de datos y realizar programas sencillos.
Contenido
Control de flujo en Python II (for - while)
FOR
For controlado con secuencia a través de una lista
For controlado con secuencia a través de un rango
Ejercicios guiados
FOR (Tabla de multiplicar)
FOR II (Números primos)
While
Ejemplo de uso del bucle WHILE I (como contador)
Ejemplo de uso del bucle WHILE (evento)
Analiza el código
WHILE infinito
Ejemplo de bucle infinito por error
Bucles anidados
Analiza el código
Break, Continue, Else & Pass
Break
Continue
Else
Pass
Resumen
7 - Funciones en Python
Objetivo
Crear y aplicar funciones definidas por ti mismo, Utilizar y construir funciones con una correcta organización del código. Crear programas de dificultad media.
Contenido
Funciones en Python
Definir funciones en Python
Documentar funciones en Python
Los parámetros
Orden de los parámetros (keywords)
Parámetros por defecto
Parámetros múltiples indefinidos
Parámetros múltiples por clave-valor
Ámbitos
Ámbito global
Ámbito nonlocal
Ámbitos locales
Búsqueda de nombres entre ámbitos
La expresión global
Retorno de datos
Retorno múltiple
Funciones de orden superior
Filter y Map
Funciones Lambda
Funciones Recursivas
Funciones generadoras e iteradores
Sugerencias generales para programar con funciones
Resumen
8 - Uso de módulos y paquetes en Python
Objetivo
Utilizar y construir módulos y paquetes con una correcta organización del código. Crear programas de dificultad media, encontrar y corregir errores en el código.
Contenido
Uso de módulos y paquetes en Python
Módulos
Localización de módulos
Archivos compilados de Python
Creando un módulo
__name__
Importación de módulos
Estructura de un Módulo
Funciones help() y dir()
Ejercicio guiado para la realización y utilización de módulos
usuario.py
contrasena.py
validador.py
Paquetes
Módulos de Python
Módulo random
Módulo datetime y time
Módulo os
Resumen
9 - Programación orientada a objetos en Python
Objetivo
La competencia adquirir en esta unidad es comprender y trabajar con el paradigma de la programación orientada a objetos o POO por sus siglas en inglés.
Contenido
Programación orientada a objetos en Python
Pensar en POO
Cualidades de un objeto
El objeto es (CUALIDADES)
El objeto tiene
Objetos que comparten características
El objeto puede (CAPACIDADES)
Algo de vocabulario
Programación orientada a objetos o POO
Abstracción
Encapsulamiento
Polimorfismo
Herencia
La Clase
Atributos
Métodos
Método __init__
El Objeto
Acceso al interior de un objeto
Herencia
Subclase
Métodos y atributos de la subclase
El nuevo objeto
Herencia múltiple
Manteniendo el código privado (Encapsulación)
Métodos especiales
Método __str__
Métodos para operar matemáticamente
Métodos Get Set & Delete
@Property en Python
Método __len__
Resumen
10 - Manejo de errores, excepciones y archivos
Objetivo
Comprender, manejar y evitar determinados tipos de errores y excepciones.
Manejar trabajar y editar archivos a través de Python
Contenido
Manejo de errores, excepciones y archivos
Errores
Error de sintaxis
Excepciones o errores lógicos
Análisis de una excepción
La función
Llamada sin errores
Llamada con errores
Analizando el error
La ruta
Tipo y causa del error
Levantar excepciones
Manejando excepciones
Excepción básica o general
Utilización de banderas
Excepciones por tipo
Detalles de error
Excepciones propias
La expresión finally
Manejo de Archivos
Modos al abrir un archivo
Abriendo el archivo
Métodos para manejo de archivos
Ejemplo de gestión de archivos
Analiza el código
Últimas anotaciones sobre manejo de archivos
with
Borrar mover y renombrar archivos
Resumen