Curso de Python3

Saludos desde mi cueva, programadores y hackers que transforman el café en código en las horas más inspiradoras de la madrugada, tal como mencioné en algunos posts anteriores, estoy en mi proceso de re aprendizaje de Python3, ya que lo pienso implementar para tareas complejas, como Machine Learning e Inteligencia Artificial, pero eso es otra historia, este curso lo dividiré en tres partes que van desde como imprimir en la pantalla, hasta comprimir ficheros y enviar solicitudes a servidores en internet, para realizar un proceso.

Mi intención con este curso es hacerlo lo más sencillo posible pero sin perder las bases, para que se puedan ver las bondades y aplicaciones del lenguaje, la duración del curso es aproximadamente de tres semanas, estaré preparando material en mi repositorio de github [learning-python].

Primera parte del curso

  1. Introducción.
  2. Configurando nuestro entorno de desarrollo.
  3. Tipos de datos.
  4. Operaciones aplicables a los tipos de datos.
  5. Estructuras de datos
    1. Conjuntos
    2. Tuplas
    3. Listas
    4. Diccionarios
  6. Estructuras de selección
    1. if
    2. else
    3. else if
  7. Estructuras de bifuración
    1. for
    2. while
  8. Instrucciones en una sola línea
    1. in
    2. for
    3. if
  9. Funciones
    1. Definición de una función
    2. Llamadas a funciones
    3. Retornos
    4. Parámetros infinitos
      1. Como un arreglo
      2. Como un diccionario.

Segunda parte del curso

  1. Clases
    1. Atributos
    2. Métodos
    3. Referencia al objeto actual
    4. Constructores
    5. Destructores
  2. Diferencia entre una clase y un objeto
  3. Encapsulamiento
  4. Métodos y Atributos estáticos
  5. Visibilidad
    1. Métodos privados
    2. Atributos privados
    3. Buenas prácticas
  6. Herencia
  7. Polimorfismo
  8. Métodos especiales
  9. Hash de objetos
  10. Excepciones
    1. Librería estándar
    2. Definidas por el usuario
  11. Paquetes y módulos
    1. Path estandar (sys.path)
    2. Definir un paquete

Tercera parte del curso (Programación avanzada)

  1. Iterators
  2. Generators
  3. Closures
  4. Decorators
  5. Expresiones regulares
    1. Definición
    2. Uso de la librería estándar
    3. Implementación en un ambiente real
    4. Búsquedas con expresiones regulares.
  6. Ficheros
    1. Permisos
    2. Lectura y escritura
    3. Representación de un fichero
    4. Acceso a ficheros de texto plano
    5. Acceso a ficheros binarios
  7. Ficheros especiales
    1. JSON
    2. XML
    3. YAML
  8. Ficheros de configuración
    1. Analizar ficheros de configuración
    2. Uso de los ficheros de configuración
  9. Ficheros CSV
  10. Compresión y descompresión de ficheros
    1. ¿Qué es la compresión?
    2. ZIP
    3. GZIP
    4. BZ2
    5. Tarball
  11. Bases de datos
    1. Relacionales
      1. SQLite
      2. MySQL
    2. No relacionales
      1. MongoDB
    3. SQL Alchemy
    4. ORMs
      1. ¿Qué son?
      2. ¿Cómo implementarlos?
  12. Uso de Python en Internet
    1. Telnet
    2. FTP
    3. HTTP
    4. XML-RPC
    5. EMAIL
      1. POP3
      2. SMTP
      3. IMAP4
    6. GCI
    7. Creando un servidor web portable
  13. Aplicación de Python en el mundo real
  14. Monitor de Raspberry pi en python
    1. Instalación
    2. Creando el servidor web
    3. Configuración de DDNSs
    4. Accediendo a nuestro servidor desde internet
    5. Obteniendo estadísticas del servidor
      1. Temperatura
      2. Procesos en ejecución
    6. Escalabilidad
  15. Herramientas open source para python
    1. Librerías
    2. Frameworks