Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porBeatriz Alvarado Velázquez Modificado hace 8 años
1
Curso de Python Clase 1 Dpto. Telemática CUJAE Curso 2003-2004
2
Objetivos : Dpto. Telemática CUJAE Curso 2003-2004 1.Conocer características generales del lenguaje Python. 2.Instalar sobre Windows el intérprete de Python además del IDE con que trabajaremos en este curso: “BOA Constructor”. 3.Hacer en BOA una aplicación Python sencilla. 4.Introducirnos en la sintáxis de Python.
3
Características del lenguaje Python Dpto. Telemática CUJAE Curso 2003-2004 1.Es un lenguaje interpretado. Existe un programa que corre sobre la plataforma en que se ejecutan los “scripts Python” e interpreta los mismos. Este programa (Intérprete de Python) se encuentra disponible para la mayoría de las plataformas lo cual convierte al lenguaje en un lenguaje multiplataforma.
4
Características del lenguaje Python Dpto. Telemática CUJAE Curso 2003-2004 El ciclo “Escribir el programa / Compilar / Enlazar / Probar” es mucho más rápido, pues no requiere ni compilación ni enlace. Además el intérprete puede usarse interactivamente, lo cual permite experimentar algunas características del lenguaje o probar funciones durante el desarrollo de un programa.
5
Características del lenguaje Python Dpto. Telemática CUJAE Curso 2003-2004 2.Es un lenguaje de muy alto nivel. Posee tipos de datos incorporados como arreglos flexibles y diccionarios los cuales costarían días implementar eficientemente en C. Esta característica hace que los códigos sean bastante escuetos, sencillos y fáciles de trasladar de una plataforma a otra.
6
Características del lenguaje Python Dpto. Telemática CUJAE Curso 2003-2004 3.Ofrece una mejor estructuración y soporte para programas extensos que el shell y a su vez mejor chequeo de sintaxis que el C. 4.Es orientado a Objeto. 5.Permite dividir los programas en módulos que pueden ser usados por otros programas Python. 6.Tiene una curva de aprendizaje muy elevada.
7
Instalar interprete Dpto. Telemática CUJAE Curso 2003-2004 En el sitio oficial de Python (www.python.org) en la sección download (www.python.org/download) se encuentra la última versión de Python. A la hora de escribir este curso era la 2.3. Se recomienda descargar el instalador para Windows y seguir las instrucciones del mismo, lo cual fácilmente nos permitiría tener el intérprete de Python instalado sobre la plataforma Windows.www.python.orgwww.python.org/download
8
Instalar BOA Constructor Dpto. Telemática CUJAE Curso 2003-2004 BOA esta programado en Python y constituye una muestra de qué se puede hacer con este lenguaje. Es un IDE (Integrated Development Environment) Python multiplataforma que incorpora las principales ventajas presentes en los IDEs modernos. En (http://boa- constructor.sourceforge.net/Installation.html) se puede encontrar información para instalar BOA sobre varias plataformas.http://boa- constructor.sourceforge.net/Installation.html
9
Instalar BOA Constructor Dpto. Telemática CUJAE Curso 2003-2004 Sobre Windows solo se necesita tener instalado Python y wxPython una librería que fue usada para hacer el BOA, de la misma existe un instalador para Windows en http://www.wxpython.org/, el cual nos permite con pocos clicks instalar wxPython. Después de haber instalado Python y wxPython se descarga el instalador del BOA (http://prdownloads.sourceforge.net/boa- constructor/) y se ejecuta. http://www.wxpython.org/http://prdownloads.sourceforge.net/boa- constructor/
10
Hacer en BOA una aplicación Python Dpto. Telemática CUJAE Curso 2003-2004 1.En el directorio de instalación de Python, se encuentra un fichero “Lib\site-packages \wxPython\tools\boa\Boa.pyw”, crear un acceso directo en el escritorio y ejecutarlo. 2.En la ventana con título “BOA Constructor – Python IDE – wxPython GUI Builder – Zope Editor” hacer click en un icono que tiene una serpiente azul que se encuentra en la viñeta “new”. Con esto creamos la viñeta “*(PyApp1)*” en la ventana titulada “Editor”
11
Hacer en BOA una aplicación Python Dpto. Telemática CUJAE Curso 2003-2004 3.Ver que dentro de esta viñeta se encuentran tres viñetas, en la titulada “~Source~” escribir “print "Hola Mundo”” en la línea 6 sustituyendo la palabra “pass”. 4.Salvar la aplicación con “CTRL-S” ejecutarla con F9. Notar que al ejecutar la aplicación aparecen tres viñetas en la parte inferior de la ventana “Editor”, en una de ellas (“Output”) podemos ver “Hola Mundo”.
12
Dpto. Telemática CUJAE Curso 2003-2004 1.Ir al shell. En la ventana titulada “Editor” dar click en la viñeta “Shell”. 2.Ir al código fuente En la ventana titulada “Editor” dar click en la viñeta “FirstApp” y después dar click en la viñeta “~Source~”. 3.Notación Los códigos en este color probarlos en el shell, los que estén en este otro en una aplicación en el BOA.
13
Operadores numéricos Dpto. Telemática CUJAE Curso 2003-2004 Los operadores numéricos “+”, “-”, “*” y “/” funcionan como en otros lenguajes. Los paréntesis pueden ser utilizados para agrupar expresiones y alterar el orden de evaluación. Ejemplo: (50-5*6)/4.2(división con punto flotante) -7/3(división entera)
14
Operadores numéricos Dpto. Telemática CUJAE Curso 2003-2004 Igual que en C el operador “=” se utiliza para asignar un valor a una variable. Una asignación no imprime nada en el shell. Un valor puede ser asignado a varias variables simultáneamente. a = 40 c = d = e = 40
15
Operadores numéricos Dpto. Telemática CUJAE Curso 2003-2004 Python soporta números complejos, los mismos son escritos de la forma “(real + imagj)” o formados como sigue: “complex(real, imag)” Estos números son representados por dos números en punto flotante. Para extraer las partes de un número complejo “z”, use “z.real” y “z.imag”. a = (3+1j)*3 1j * complex(0,1) + a.real + a.imag
16
Operadores numéricos Dpto. Telemática CUJAE Curso 2003-2004 En el modo interactivo la última expresión impresa es asignada a la variable _. Esta variable debe ser tratada como de solo lectura. Ejemplo: tax = 12.5/10 ** 3 price = 100.50 price * tax price + _ round(_, 2)
17
Estructura de la línea e indexación Dpto. Telemática CUJAE Curso 2003-2004 1.Cada sentencia termina con un carácter nueva línea a diferencia de otros lenguajes que lo hacen con “;”. Las sentencias de gran longitud pueden ocupar más de una línea utilizando el carácter de continuación de línea “\” como se muestra en el siguiente ejemplo: def example(): a=3+\ 5 print a
18
Estructura de la línea e indexación Dpto. Telemática CUJAE Curso 2003-2004 No se necesita el carácter de continuación de línea cuando la parte de la sentencia que se quiere poner en varias líneas está encerrada entre paréntesis, triple comillas, corchetes o llaves, por ejemplo: def example(): a = (1,2, 3) print a
19
Estructura de la línea e indexación Dpto. Telemática CUJAE Curso 2003-2004 2.La indexación de las líneas de código en Python es muy importante, pues mediante la indexación se definen los bloques de código, tales como cuerpos de funciones, condicionales, ciclos y clases. Por ejemplo:a=1if a==3:print aprint a+1print a-1
20
Estructura de la línea e indexación Dpto. Telemática CUJAE Curso 2003-2004 Aunque los tabuladores pueden ser usados en la indexación, esto no es recomendado. Notar que al poner un tabulador en el editor del BOA es sustituido por espacios. En el resto de los ejemplos se debe seguir cuidadosamente los márgenes o indexados, pues estos son causas de innumerables errores muy difíciles de detectar.
21
Estructura de la línea e indexación Dpto. Telemática CUJAE Curso 2003-2004 3.Si el cuerpo de una función, condicional, ciclo o el de una clase contiene una sola sentencia, esta se puede expresar en la misma línea. a = 3 if a==3: print a 4.En caso que se requiera crear un bloque o cuerpo vacío, se debe utilizar la sentencia “pass”. def example(): pass
22
Estructura de la línea e indexación Dpto. Telemática CUJAE Curso 2003-2004 5. Las líneas que tienen una sola sentencia pueden terminar con “;”. Para poner más de una sentencia en una línea, se deben separar con “;”. 6.El carácter “#” indica que a partir de ahí hasta el final de la línea es un comentario. Esto no tiene efecto dentro de una cadena. 7.Las líneas en blanco son ignoradas.
23
Identificadores y palabras reservadas Dpto. Telemática CUJAE Curso 2003-2004 Un identificador es un nombre usado para identificar variables, funciones y otros objetos. Puede incluir los siguientes caracteres (a..z, A..Z, _, 0..9). No pueden comenzar con números. Son “case sensitive”, es decir “Count” no es el mismo identificador que “count”. Los identificadores que comienzan o terminan con “_” a menudo tienen un significado especial, por tanto deben evitarse para identificadores comunes.
24
Identificadores y palabras reservadas Dpto. Telemática CUJAE Curso 2003-2004 Existen palabras que están reservadas por el lenguaje y que no pueden usarse como identificadores. Ejemplo: and elif global or assert else if pass break except import print class exec in raise continue finally is return def for lambda try del from not while
25
Literales Dpto. Telemática CUJAE Curso 2003-2004 Los literales son una notación para expresar los valores constantes de los tipos de datos incorporados (aquellos definidos por el lenguaje)
26
Literales Dpto. Telemática CUJAE Curso 2003-2004 1.Numéricos Python incorpora cuatro datos numéricos: enteros, enteros largos, números de punto flotante y números complejos. Un número como 1234 es un entero decimal, para especificar un entero en notación octal y hexadecimal hay que preceder el valor por “0” y “0x” respectivamente. Para especificar que es un entero largo agregarle al final “l” o “L”. Todos los datos numéricos se representan con signo.
27
Literales Dpto. Telemática CUJAE Curso 2003-2004 A diferencia de los enteros, los cuales están limitados por la precisión de la maquina, los enteros largos pueden tener cualquier longitud (solo limitado por la máxima cantidad de memoria disponible en la máquina). Números como 123.34 y 1.2334e+02, son interpretados como números con punto flotante. Un entero o un números con punto flotante seguido de “j” o “J” es un número imaginario.
28
Tipos de Datos Dpto. Telemática CUJAE Curso 2003-2004 Los números con punto flotante son de doble precisión, es decir ocupan 64 bit. El rango de un número entero en la mayoría de las maquinas es –2147483648 a 2147483647, ocupan 32 bit. Si el espacio ocupado en memoria y la precisión son asuntos importantes en una aplicación, se debe considerar usar la librería: http://numpy.sourceforge.net/
29
Literales Dpto. Telemática CUJAE Curso 2003-2004 Enteros:13331209 Enteros largos:9999999999999992L Entero en notación octal:01 Entero en notación hexadecimal:0xA Números con punto flotante:1.2 Número imaginario:8.9j
30
Literales Dpto. Telemática CUJAE Curso 2003-2004 Número complejo:(1.2+3.4j) Programa de ejemplo import types a=1; b=1L; c=011; d=0xA e=1j; f=3+e print type(a), type(b), type(c) print type(d), type(e), type(f)
31
Literales Dpto. Telemática CUJAE Curso 2003-2004 2.Cadenas Python actualmente soporta dos tipos de literales de cadena: 1-Cadenas con caracteres de 8 bit 2-Cadenas con caracteres de 16 bit (UNICODE) Las cadenas con caracteres de 8 bit, son las más usadas y son definidas encerrando texto entre (‘), (“), (‘‘‘) o (“““). Se debe usar el mismo tipo de comilla para comenzar y terminar una cadena.
32
Literales Dpto. Telemática CUJAE Curso 2003-2004 El carácter backslash (\) es utilizado para poner caracteres especiales tales como nueva línea, backslash, comillas y caracteres no imprimibles en una cadena de caracteres. \\Backslash \’ Comilla simple \n Fin de línea \t Tabulador horizontal
33
Literales Dpto. Telemática CUJAE Curso 2003-2004 Las cadenas de caracteres formadas por triple comillas pueden expresarse en múltiples líneas, pueden contener el carácter nueva línea y comillas. Ejemplos: a = “““Esta es la primera linea Esta es la segunda el nombre de esta prueba es “Prueba 1”.”””
34
Literales Dpto. Telemática CUJAE Curso 2003-2004 Programa de ejemplo b = ‘Cadena con \’\n’ c = “El lenguaje es ‘Python’.\n” d = ‘Es es una cadena que no \ cave en una linea\n’ print a, b, c, d
35
Cadena de Documentación Dpto. Telemática CUJAE Curso 2003-2004 Si la primera sentencia de un módulo, una clase, o de una definición de función es una cadena de caracteres, esa cadena de caracteres se convierte en la “cadena de documentación” del objeto asociado. Los navegadores de código y herramientas para generar documentación a menudo usan esta cadena. La misma es accesible a través del atributo “__doc__”.
36
Cadena de Documentación Dpto. Telemática CUJAE Curso 2003-2004 Programa de ejemplo def example1(): ‘‘‘ Esta es la cadena \nde documentación.´´´ print example1().__doc__ def example2(): “Documentación” example1(); print example2.__doc__
37
FIN Dpto. Telemática CUJAE Curso 2003-2004 Por favor, nos sería muy útil que cualquier sugerencia o error que encontrase en el presente documento nos lo hicieran llegar a: frankabel@tesla.cujae.edu.cu
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.