-
- Instalación en linux debian/Ubuntu
- Instalación en otras distribuciones linux
- Instalación en Windows
- Instalación en Mac
-
Entornos de desarrollos y editores de texto
- IDE python
- Editores de textos
- IDE us Editores de texto
- Características de los editores de textos
-
- Uso del interprete
- Escribimos un programa
- Ejecución de programas usando shebang
- Guía de estilo
-
- Estructura de programa
- Los comentarios
- Palabras reservadas
- Ejemplo
-
Funciones y constantes predefinidas
- Funciones predefinidas
- Algunos ejemplos de funciones
- Constantes predefinidas: False,True,None, ...
- Ayuda, función help()
-
- Literales, variables y expresiones
- Definición, borrado y ámbito de variables
- Operadores. Precedencia de operadores
- Función eval()
-
- Clasificación de tipos de datos
- Función type()
- Función isistance()
-
- ¿Qué es el tipado dinámico?
- Objetos inmutables y mutables
- Función id()
- Operadores de identidad
- Operadores de asignación
- Asignación múltiple
-
- Función input
- Función print
- Formateando cadenas de caracteres
- Función format()
-
- Enteros
- Reales
- Complejos
- Operadores aritmético
- Funciones predefinidas que trabajan con números
- Operadores a nivel de bit
- Conversión de tipos
-
- Tipo booleano
- ¿Qué valores se interpretan como FALSO?
- Operadores booleanos
- Operadores de comparación
- Funciones all() y any()
-
Estructura de control: Alternativas
- Alternativas simples
- Alternativas dobles
- Alternativas múltiples
- Expresión reducida del if
-
Estructura de control: Repetitivas
- while
- for
- Instrucciones break, continue y pass
- Recorriendo varias secuencias. Función zip()
-
- Enumeración de los tipos secuencias
- Características principales de las secuencias
-
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
-
- 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
-
Operaciones avanzadas con secuencias
- Función map
- Función filter
- Función reduce
- list comprehension
-
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
-
Tipo de datos secuencia: Rangos
- Definición de un rango. Constructor range
- Recorrido de un rango
- Operaciones básicas con range
-
- Introducción a la codificación de caracteres
- La codificación de caracteres en python3
- Funciones chr() y ord()
-
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
-
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
-
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()
-
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
-
Tipo de datos iterador y generador
- Iteradores
- Función next(), reversed()
- Generadores
-
Tipo de datos mapa: diccionario
- Definición de diccionarios. Constructor dict
- Operaciones básicas con diccionarios
- Los diccionarios son tipos mutables
-
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
-
Lectura y escritura de ficheros de textos
- Función open()
- Modos de acceso
- Codificación de caracteres
- Objeto fichero
- Metodos principales
- Recorrido de ficheros
-
- Módulo csv
- Leer ficheros CSV
- Escribir ficheros CSV
-
- Módulo json
- Leer ficheros json
- Escribir ficheros json
-
- 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
- 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?
-
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
-
Módulos estándares: módulos matemáticos
- Módulo math
- Módulo fractions
- Módulo statistics
- Módulo random
-
Módulos estándares: módulos de hora y fechas
- Módulo time
- Módulo datetime
- Módulo calendar
-
- 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
-
- 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
-
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
-
- Funciones recursivas
- Funciones lambda
- Decoradores
- Funciones generadoras
-
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
-
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
-
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
-
Polimorfismo, herencia y delegación
- Polimorfismo
- Herencia
- La función super()
- Herencia múltiple
- Funciones issubclass() y isinstance()
- Delegación