/curso_python3

Curso python3

Primary LanguagePython

Curso: Introducción a python3

Unidades

Introducción

  1. Introducción a python

  2. Python2 us python3

  3. Instalación de python3

    • Instalación en linux debian/Ubuntu
    • Instalación en otras distribuciones linux
    • Instalación en Windows
    • Instalación en Mac
  4. Entornos de desarrollos y editores de texto

    • IDE python
    • Editores de textos
    • IDE us Editores de texto
    • Características de los editores de textos
  5. Mi primer programa en python3

    • Uso del interprete
    • Escribimos un programa
    • Ejecución de programas usando shebang
    • Guía de estilo

    Estructura del lenguaje

  6. Estructura del programa

    • Estructura de programa
    • Los comentarios
    • Palabras reservadas
    • Ejemplo
  7. Funciones y constantes predefinidas

    • Funciones predefinidas
    • Algunos ejemplos de funciones
    • Constantes predefinidas: False,True,None, ...
    • Ayuda, función help()
  8. Datos

    • Literales, variables y expresiones
    • Definición, borrado y ámbito de variables
    • Operadores. Precedencia de operadores
    • Función eval()
  9. Tipos de datos

    • Clasificación de tipos de datos
    • Función type()
    • Función isistance()
  10. Trabajando con variables

    • ¿Qué es el tipado dinámico?
    • Objetos inmutables y mutables
    • Función id()
    • Operadores de identidad
    • Operadores de asignación
    • Asignación múltiple
  11. Entrada y salida estándar

    • Función input
    • Función print
    • Formateando cadenas de caracteres
    • Función format()

    Tipos de datos numéricos

  12. Tipo de datos numéricos

    • Enteros
    • Reales
    • Complejos
    • Operadores aritmético
    • Funciones predefinidas que trabajan con números
    • Operadores a nivel de bit
    • Conversión de tipos
  13. Tipo de dato booleanos

    • Tipo booleano
    • ¿Qué valores se interpretan como FALSO?
    • Operadores booleanos
    • Operadores de comparación
    • Funciones all() y any()
  14. Ejercicios de programas sencillos

    Estructuras de control

  15. Estructura de control: Alternativas

    • Alternativas simples
    • Alternativas dobles
    • Alternativas múltiples
    • Expresión reducida del if
  16. Ejercicios de alternativas

  17. Estructura de control: Repetitivas

    • while
    • for
    • Instrucciones break, continue y pass
    • Recorriendo varias secuencias. Función zip()
  18. Ejercicios de repetitivas

    Tipos de datos secuencia

  19. Tipo de datos secuencia

    • Enumeración de los tipos secuencias
    • Características principales de las secuencias
  20. Tipo de datos secuencia: listas

    • Construcción de una lista
    • Operaciones básicas con listas
    • Las listas son mutables. ¿Cómo se copian las listas?
    • Listas multidimensionales
  21. Métodos principales de listas

    • Métodos de inserción: append, extend, insert
    • Métodos de eliminación: pop, remove
    • Métodos de ordenación: reverse, sort,
    • Métodos de búsqueda: count, index
    • Método de copia: copy
  22. Ejercicios de listas

  23. Operaciones avanzadas con secuencias

    • Función map
    • Función filter
    • Función reduce
    • list comprehension
  24. Tipo de datos secuencia: Tuplas

    • Construcción de una tupla
    • Empaquetado y desempaquetado de tuplas
    • Operaciones básicas con tuplas
    • Las tuplas son inmutables
    • Métodos principales
  25. Tipo de datos secuencia: Rangos

    • Definición de un rango. Constructor range
    • Recorrido de un rango
    • Operaciones básicas con range
  26. Codificación de caracteres

    • Introducción a la codificación de caracteres
    • La codificación de caracteres en python3
    • Funciones chr() y ord()
  27. Tipo de datos cadenas de caracteres

    • Definición de cadenas. Constructor str
    • Operaciones básicas con listas
    • Las cadenas son inmutables
    • Comparación de cadenas
    • Funciones repr, ascii, bin
  28. Métodos principales de cadenas

    • Métodos de formato
    • Métodos de búsqueda
    • Métodos de validación
    • Métodos de sustitución
    • Métodos de unión y división
  29. Ejercicios de cadenas

  30. Tipo de datos binarios: bytes, bytearray

    • Definición de bytes. Constructor bytes
    • Definición de bytearray. Constructor bytearray
    • Operaciones básicas con bytes y bytearray
    • Los bytes son inmutables, los bytearray son inmutables
    • Métodos de bytes y bytearray
    • Métodos encode(), decode()
  31. Tipo de datos conjuntos: set, frozenset

    • Definición de conjuntos. Constructor set
    • Definición de frozenset. Constructor frozenset
    • Operaciones básicas con set y frozenset
    • Los set son inmutables, los frozenset son mutables
    • Métodos principales
  32. Tipo de datos iterador y generador

    • Iteradores
    • Función next(), reversed()
    • Generadores

Tipos de datos mapas

  1. Tipo de datos mapa: diccionario

    • Definición de diccionarios. Constructor dict
    • Operaciones básicas con diccionarios
    • Los diccionarios son tipos mutables
  2. Métodos principales de diccionarios

    • Métodos de eliminación: clear
    • Métodos de agregado y creación: copy, dict.fromkeys, update, setdefault
    • Métodos de retorno: get, pop, popitem, items, keys, values
    • El tipo de datos dictviews
    • Recorridos de diccionarios
  3. Ejercicios de diccionarios

    Trabajar con ficheros

  4. Lectura y escritura de ficheros de textos

    • Función open()
    • Modos de acceso
    • Codificación de caracteres
    • Objeto fichero
    • Metodos principales
    • Recorrido de ficheros
  5. Gestionar ficheros CSV

    • Módulo csv
    • Leer ficheros CSV
    • Escribir ficheros CSV
  6. Gestionar ficheros json

    • Módulo json
    • Leer ficheros json
    • Escribir ficheros json

    Errores y Excepciones

  7. Excepciones

    • Errores sintácticos y errores de ejecución
    • Manejando excepciones. try, except, else, finally
    • Obteniendo información de las excpciones
    • Propagando excepciones. raise

    Módulos, paquetes y namespaces

  8. Módulos y paquetes

    • Módulos, paquetes
    • Ejecutando módulos como scripts
    • Importando módulos: import
    • Namespace y alias
    • Importando elementos de un módulo: from...import
    • Importando módulos desde paquetes
    • Función dir()
    • ¿Donde se encuentran los módulos?
  9. Módulos estándares: módulos de sistema

    • Módulo os
    • Ejecutar comandos del sistema operativo. Módulo subprocess
    • Módulo shutils
    • Módulos sys
    • Ejecución de scripts con argumentos
  10. Módulos estándares: módulos matemáticos

    • Módulo math
    • Módulo fractions
    • Módulo statistics
    • Módulo random
  11. Módulos estándares: módulos de hora y fechas

    • Módulo time
    • Módulo datetime
    • Módulo calendar
  12. Instalación de módulos

    • PyPI y pip
    • Instalación de módulos python
    • Creando entornos virtuales con virtualenv
    • Creando entornos virtuales con venv
    • Instalando paquetes en nuestro entorno virtual

    Programación estructurada y modular

  13. Introducción a las funciones

    • Introducción a la programación estructurada y modular
    • Definición de funciones
    • Ámbito de variables. Sentencia global
    • Parámetros formales y reales
    • Paso de parámetro por valor o por referencia
    • Llamadas a una función
  14. Conceptos avanzados sobre funciones

    • Tipos de argumentos: posicionales o keyword
    • Parámetro *
    • Argumentos arbitrarios (*args y **kwargs)
    • Desempaquetar argumentos: pasar listas y diccionarios
    • Devolver múltiples resultados
  15. Tipos especiales de funciones

    • Funciones recursivas
    • Funciones lambda
    • Decoradores
    • Funciones generadoras

    Ejercicios programación estructurada y modular

  16. Ejercicios con funciones

  17. Programación estructurada y modular: Ejemplo completo

    Programación orientada a objetos

  18. Programación orientada a objetos

    • Introducción a la Programación Orientada a Objetos
    • Definición de clase, objeto, atributos y métodos
    • Atributos de objetos
    • Método constructor init
    • Definiendo métodos. El parámetro self
    • Definición de objetos
  19. Conceptos avanzados de programación orientada a objetos I

    • Atributos de clase (estáticas)
    • Atributos privados y ocultos
    • Métodos estáticos
    • Métodos de clase (estáticos)
    • Funciones getattr,setattr,delattr,hasattr
  20. Conceptos avanzados de programación orientada a objetos II

    • Propiedades: getters, setters, deleter
    • Representación de objetos __str__ y __repr__
    • Comparación de objetos __eq__
    • Operar con objetos __add__ y __sub__
    • Más métodos especiales
  21. Polimorfismo, herencia y delegación

    • Polimorfismo
    • Herencia
    • La función super()
    • Herencia múltiple
    • Funciones issubclass() y isinstance()
    • Delegación

    Ejercicios programación orientada a objetos

  22. Programación orientadas a objetos: Ejemplo completo