Python
Programación
J. Martín Alba Martínez
Centro Nacional de Actualización Docente
Departamento de Control
Junio, 2023
J. Martín Alba Martínez CNAD - Control
Objetivo
Utilizar las sentencias del lenguaje de programación de Python
con el fin de crear programas que se ejecutan en la línea de
comandos.
J. Martín Alba Martínez CNAD - Control
Dinámica y acreditación
Dinámica del curso
Sesiones por videoconferencia de 2 horas
Actividades del Sistema Gestor de Aprendizaje (LMS)
Trabajo independiente
Intervenciones claras y concretas
Utiliza tu nombre en la plataforma
Acreditación del curso
Asistencia del 80% a las sesiones virtuales
60% - Tareas del LMS
40% - Exámenes
J. Martín Alba Martínez CNAD - Control
Introducción
Desarrollo de los lenguajes
1957 Fortran I FLOW-MATIC
58 Fortran II ALGOL 58
59 LISP
60 ALGOL 60 APL COBOL
61
62 Fortran IV CPL
63 SIMULA I SNOBOL
64 BASIC PL/I
65
66 ALGOL W
67 SIMULA 67
68 ALGOL 68
69 BCPL
70 B
71 Pascal C
72
73 Prolog
74
75 Scheme
76
77 MODULA-2
78 Fortran 77 awk ML
79
80 Smalltalk 80
81
82 ICON
83 Ada 83 Miranda
84
85 C++ COMMON LISP
86 Perl
87
MODULA-3 Oberon QuickBASIC Haskell
88
89 ANSI C (C89)
90 Fortran 90 Eiffel Visual BASIC
91 Python
92
93
94 Lua PHP Java
95 Fortran 95 Ada 95 Ruby
96
97 Javascript
98
99 C99
00 Python 2.0
C#
01 Visual [Link]
02
03 Fortran 2003
04 Ruby 1.8 Java 5.0
05
Ada 2005
06 Java 6.0 C#2.0 Python 3.0
07 C#3.0
08 Fortran 2008 Ruby 1.9
09 C#4.0
Java 7.0
10
11
12 C#5.0
13
1
14 Java 8.0
15
16
17
18
19
3.11
20
Python 3.9
21
J. Martín Alba Martínez CNAD - Control
Introducción
Características
Compilado Interpretado
El programa fuente es Las sentencias del programa
tranferido a código de fuente se transfieren y se
máquina a un archivo para ejecutan una después de la
ser ejecutado. otra.
Fuente Byte code Runtime
Interpretado
[Link]
PVM
[Link]
J. Martín Alba Martínez CNAD - Control
Introducción
Características
Portable
Paradigmas Integración Dinámico
Comunidad Recolector
[Link]
J. Martín Alba Martínez CNAD - Control
Introducción
Tipos de programas
Procesamiento paralelo Librerías
Buscador de archivos NumPy
Complemento para internet SciPy
Bases de datos Matplotlib
Jupyter
Sympy
Pandas
J. Martín Alba Martínez CNAD - Control
Introducción
Plataforma de desarrollo
Interprete de Python
IDE
Anaconda
Emacs
Visual Studio
Jupyter
PyCharm Modos de programación
IDLE Interativa
Eclipse + PyDev Secuencia de comandos
J. Martín Alba Martínez CNAD - Control
Introducción
Implementaciones
Jython
Java PyPy
IronPython Tinypy
C# Embebidos
de 64Kb
Interprete y módulos desarrollados
para diferentes lenguajes.
CPython
J. Martín Alba Martínez CNAD - Control
Elementos de la programación
Comunes
Secuencial Decisión
Repetición Funciones
J. Martín Alba Martínez CNAD - Control
Elementos de la programación
Comunes
Palabras reservadas
Operadores
Tipos de datos
Conversión implicíta y explicíta de tipos
Estructuras de datos
Reglas y sugerencias
Operador punto para hacer referencia
J. Martín Alba Martínez CNAD - Control
Elementos de la programación
Sintaxis: Novedades
Todo es objeto
No requiere definir el tipo de dato
Se usa indentación para definir bloques de código
No se indica el tipo de dato que devuelve la función
Los parámetros se pasan por posición, clave o ambos
Usa docstrings para documentar el código
No precisa de (;) para finalizar la sentencia
No hay modificador para constantes
Asignación multiple
J. Martín Alba Martínez CNAD - Control
Organización de los programas
Paquete Un módulo contiene sentencias,
Módulo funciones y clases.
Los paquetes son directorios para
organizar el código.
J. Martín Alba Martínez CNAD - Control
Espacio de nombres
import
Consideraciones de contexto
Un script búsca código en el directorio actual
Verificar la variable de estado PATH
Se ejecuta el script individualmente
Requiere el script de otros módulos
El script será llamado desde otro directorio
J. Martín Alba Martínez CNAD - Control
Función
Llamar a la Función
No regresa valor
mensajeOcultar ()
Se asigna a una variable
letra = leerLetra()
Llamar desde otra función
print(seleccCaracterAleatoria(cantLetra))
J. Martín Alba Martínez CNAD - Control