Publicado el 7 de Septiembre del 2019
1.151 visualizaciones desde el 7 de Septiembre del 2019
503,2 KB
84 paginas
Creado hace 16a (17/01/2009)
Python Training Course
Wilderman Ceren
Ingeniero de Sistemas – Especialista en
Telecomunicaciones
Consultor y experto en soluciones informáticas basadas en software
libre
Python Training Course
Perfil profesional (Unix/POSIX)
● Desarrollo de Software
– LAMP, Python (Bindings),PERL, BASH, Fortran, algo de
C,C++,Java,Tomcat,XML, webservices (SOAP, XML-RPC).
– BD> MySQL, PostgreSQL, sqlite, BerkeleyDB
● Redes
– Enrutamiento, Interoperabilidad entre dispositivos
propietarios y libres, sistemas embebidos, firewalls, IDS.
● Sistemas distribuidos
– Implementación de clusters de alto rendimiento (HPC) y alta
disponibilidad (HA).
Python Training Course
Perfil profesional (Unix/POSIX)
● Administración de servidores y recursos
– GNU/Linux (debian, gentoo, RHEL, ubuntu, otros)
– FreeBSD, OpenBSD & NetBSD.
– Seguridad en Embebidos: m0n0wall, pfSense
● Seguridad
– OpenLDAP, Kerberos,OpenVPN, FreeRADIUS
Python Training Course
Contenido
1. Que puedo hacer con Python ?
2. Puntos técnicos fuertes
3. El intérprete
4. Implementación alternativa
1.Cpython
2.Jython
3.IronPython
5. Corriendo programas en Python
Python Training Course
Contenido
6.Tipos de Objetos
– Integrados (built-in)
– Numeros
– Cadenas
– Listas
– Diccionarios
– Tuplas
– Archivos
– Otros
Python Training Course
Contenido
● 7. Números
• Literales numericos
• Operadores
• Variables y Expresiones basicas
• Formatos de visualiz. Numerico
• Division (classic y floor)
• Operaciones Bitwise
• Entero Largo
• Número complejo
Python Training Course
Contenido
8.Números
– Otros tipos numericos
● Decimales
● Sets
● Booleans
● Extensiones de terceros
9.Cadenas
– Literales
– Operaciones Basicas
Python Training Course
Contenido
– Indexado y Cortado (indexing and slicing)
– Herram. De Conversion
– Formateo de Cadenas
– Métodos
– Categorias de tipo general
10.Listas
• Operaciones basicas
• Indexado, Cortado y Matrices
• Mutabilidad
Python Training Course
Contenido
11.Diccionarios
– Operaciones basicas
– Mutabilidad
– Usos
12.Tuplas
– Sintaxis
– Conversiones e inmutabilidad
– Por que Listas y Tuplas?
Python Training Course
Contenido
13.Archivos
– Objetos en archivos
– Pickle
– Otras herramientas de archivo
– Tipos de Categoria
– Jerarquia de Tipos
– Otros tipos
– Tipos Built-in
Python Training Course
Contenido
14. Sentencias en Python
– Sintaxis a partir de sangrías
– Casos especiales
15. Loops interactivos
– Manejo de errores con entrada de texto
– Manejo de errores con sentencias try
16. Sentencias de asignación
Python Training Course
Contenido
– Asignando en secuencia
– Asignación múltiple
– Asignación aumentada
– Reglas para nombrar variables
– Sentencias en expresiones
– Cambios en el mismo lugar
17. Sentencias print
– Redirigiendo el flujo de salida
Python Training Course
Contenido
18. Sentencias if
– Ejemplo basico
– Multi-ramificación con if – elif
– Reglas para sintaxis python
– Delimitadores de bloque
– Delimitadores en sentencias
– Casos especiales
– Tests de verdad
– Expresion ternaria (if/else)
Python Training Course
Contenido
19. Loops while y for
– break, continue, pass, break y else
– Iterators
– Iterators a nivel de archivo
– Otros iterators embebidos (built-in) & user-defined
– Técnicas para codificar loops
– Usos de range, zip y map
– Generación de offsets e items con enumerate
Python Training Course
Contenido
20. Comprensión de lista
– En archivos
– Sintaxis extendida
21. Documentación del código fuente
– comentarios (#)
– función dir
– Docstrings:__doc__
● definido por el usuario
● estandar
● integrado
Python Training Course
Contenido
– PyDoc: Función de ayuda
22. Funciones
– Para que utilizar funciones ?
– Codificación de una función
● Sentencia def
● Definición
● Llamadas
– Polimorfismo en Python
– Variables locales
Python Training Course
Contenido
23. Alcance y argumentos
– Reglas en el alcance (scope)
– Conceptos Básicos del alcance
– Ejemplos
– Alcance integrado
– La sentencia global
– Minimizar uso de variables globales
– Minimizar cambios en archivo cruzado
– Otras formas de accesar globalmente
– Alcances y funciones anidadas
Python Training Course
Contenido
– Pasando argumentos
– Argumentos y referencias compartidas
– Evitando los cambios mutables en argumentos
– Simulando parámetros de salida
– Modos de concordancia de argumentos
– Valores default y keyword
– Argumentos arbitrarios
– Combinando keywords y default
– Ejemplo general de uso de funciones
Python Training Course
Contenido
24.Funciones Avanzadas
– Funciones anónimas: lambda
● Expresiones lambda
● Por que usar lambda ?
● lambdas anidados y alcances
– Aplicando funciones a argumentos
● comando apply
● Sintaxis de llamada similar a apply
– Mapeando funciones sobre secuencias: map
– Uso de filter y reduce
Python Training Course
Contenido
– Comprensión de lista: Mappings
– Conceptos básicos
– Añadiendo tests y loops anidados
– Comprensión de lista y matrices
– Iterators: Generators
● Protocolo Función Generator Extendida: send y next
● Iteratores y tipos de datos integrados
– Alternativas en la coordinación en iteraciónes
– Conceptos en el diseño de funciones
– Funciones son objetos: llamadas indirectas
– Tips en Funciones (Para tener en cuenta)
Python Training Course
Contenido
● Nombres locales detectado estáticamente
● Objetos default y mutables
● Funciones sin retorno alguno
25. Módulos
– Por que utilizar módulos ?
– Arquitectura de un programa en Python
● Cómo estructurar un programa
● Imports y Atributos
● Módulos de la libreria estándar
– Cómo trabaja import
Python Training Course
Contenido
● Programar un módulo
– Creación
– Uso (import, from)
– Namespaces
– Recargar un módulo
● Paquetes
– Import
– Por que utilizar import de paquete?
● Conceptos Avanzados en módulos
– Ocultando datos
– Habilitando futuras caracteristicas
– Mezclando modos de uso
– Import Relativo
– Conceptos en diseño de módulos
– Gotchas
Python Training Course
Contenido
26. Clases y POO
● Generalidades
● Programando clases
● Programando clases II
Sentencia Clase
Métodos
Herencia
Operador de Sobrecarga
Iteraciónes definida por el usuario
Privacidad para los atributos en instancias
Python Training Course
Contenido
● Namespaces
– Diseño con clases
● Python y POO
● Clases como registros
● POO y herencia: relaciones “Is-a”
● POO y composición: relaciones “Has-a”
● POO y delegación
● Herencia múltiple
● Clases son objetos: Generic Factories
● Métodos son objetos: Bound o unbound
● Revisión a la Docmentación con Strings
Python Training Course
Contenido
– Diseño con clases
● Clases Vs Modulos
– Topicos avanzados en clases
● Extendiendo tipos de datos “Built-in”
● Atributos para clase “seudoprivada”
● Nuevo estilo para clases
● Static y métodos de clase
● Función “decorators”
● Gotchas (Tips)
Python Training Course
Contenido
27. Excepciones y Tools
● Conceptos básicos
● Por que las excepciones (roles)
● Manejo de Excepciones
● Sentencia try/except/else
● Sentencia try/finally
● Unificado try/except
● Sentencia raise
● Sentencia assert
● Objetos Exception
● Excepciones basadas en String
Python Training Course
Contenido
– Objetos Exception
● Excepcion basada en clase
● formas y sentencias generales raise
– Diseño con Excepciones
● Excepciones anidadas (nesting exception)
● Lenguajes en excepciones
● Tips para diseño de Excepciones
● Gotchas
● Resumen del “Core”
– Python Toolset
– Desarrollo de Tools para proyectos grandes
Python Training Course
Introducción
● Por que la gente usa Python
– Calidad del Software *
– Productividad **
– Portabilidad
– Librerias de soporte
– Integración de componentes
– Se disfruta!
Python Training Course
Quienes usan Python?
● Google
● YouTube
● BitTorrent
● Intel, Cisco, HP, Seagate, Qualcomm
● Pixar
● Nasa
● ESRI (GIS)
● NSA
● OLPC
Python Training Course
1. Que puedo hacer con Python?
● Scripting y software “standalone”
● Lenguaje de Propósito General
● Web, Juegos, Robótica, Aeronáutica
● Programación a nivel de SO.
● GUIs (Tkinter, wxPython)
● PythonCard – Dabo
● Otros GUIs: Qt, GTK, MFC, Swing
● Jython & servicios Python CGI
Python Training Course
1. Que puedo hacer con Python?
● Internet Scripting
● Integración de componentes (C,C++, COM
(MSWin), Jython, .NET (IronPython), CORBA)
● Base de Datos (Sybase, Oracle, Informix, ODBC,
MySQL, PostgreSQL, SQLite, BDB, Firebird)
● Rápido en Prototipos hacia C/C++
● Programación Numérica y Científica (Numpy)
● Juegos, Imagenes, AI, XML, Robotica ... y más!
Python Training Course
2. Puntos técnicos fuertes
● Orientado a Objetos
– Polimorfismo, Sobrecarga, multi herencia
– POO es una opción (no es mandatoria)
● Es libre de usar, distribuir y es soportado!
● Es portable
– Linux/Unix, Windows/DOS, Mac OS X, BeOS, OS/2
– Sistemas de Tiempo Real (VxWorks)
– Cray – IBM mainframes
– PDAs, Celulares con Symbian/Windows Mobile
– Consolas de juego, iPods y mas...
Python Training Course
2. Puntos técnicos fuertes
● Es poderoso
– Híbrido (se integra con lenguajes “scripting”
Perl,TCL y tradicionales como C/C++)
– Tipificación dinámica (no declaración previa)
– Manejo automático de memoria
– Se programa en proyectos largos y complejos (uso
de módulos, clases y excepciones)
– Objeto tipos “Built-in”
– Tools “Built-in”
– Utilidades desde terceros
Python Training Course
2. Puntos técnicos fuertes
● Es mezclable con otros lenguajes
– Python API permite a rutinas C ser llamadas desde
python mismo.
– Se puede prototipear en Python y luego llevarlo a C/
C++ una vez al tiempo.
● Facilidad de uso
– codificalo y correlo de una!
● Fácil de aprender
● Su nombre viene de Monty Python's Flying
Circus
Python Training Course
3. El intérp
Comentarios de: Python Training Course (0)
No hay comentarios