0% encontró este documento útil (0 votos)
74 vistas37 páginas

Curso de Python

Este documento presenta la introducción a un curso de Python. Los objetivos del curso son conocer las características generales de Python, instalar el intérprete de Python e IDE BOA Constructor, y crear una aplicación Python sencilla. También cubre temas como la sintaxis de Python, operadores numéricos, estructura de líneas e indexación.

Cargado por

Spark Tronics
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
74 vistas37 páginas

Curso de Python

Este documento presenta la introducción a un curso de Python. Los objetivos del curso son conocer las características generales de Python, instalar el intérprete de Python e IDE BOA Constructor, y crear una aplicación Python sencilla. También cubre temas como la sintaxis de Python, operadores numéricos, estructura de líneas e indexación.

Cargado por

Spark Tronics
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPT, PDF, TXT o lee en línea desde Scribd

Curso de Python

Clase 1

Dpto. Telemática CUJAE


Curso 2003-2004
Objetivos:
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.


Dpto. Telemática CUJAE
Curso 2003-2004
Características del lenguaje Python

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.

Dpto. Telemática CUJAE


Curso 2003-2004
Características del lenguaje Python

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.

Dpto. Telemática CUJAE


Curso 2003-2004
Características del lenguaje Python

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.

Dpto. Telemática CUJAE


Curso 2003-2004
Características del lenguaje Python
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.
Dpto. Telemática CUJAE
Curso 2003-2004
Instalar interprete
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.

Dpto. Telemática CUJAE


Curso 2003-2004
Instalar BOA Constructor

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/Installat
ion.html
) se puede encontrar información para instalar
BOA sobre varias plataformas.

Dpto. Telemática CUJAE


Curso 2003-2004
Instalar BOA Constructor

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-constr
uctor/
) y se ejecuta.
Dpto. Telemática CUJAE
Curso 2003-2004
Hacer en BOA una aplicación Python
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”
Dpto. Telemática CUJAE
Curso 2003-2004
Hacer en BOA una aplicación Python
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”.

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. Dpto. Telemática CUJAE


Curso 2003-2004
Operadores numéricos
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)

Dpto. Telemática CUJAE


Curso 2003-2004
Operadores numéricos
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

Dpto. Telemática CUJAE


Curso 2003-2004
Operadores numéricos
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 Dpto. Telemática CUJAE
Curso 2003-2004
Operadores numéricos
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)

Dpto. Telemática CUJAE


Curso 2003-2004
Estructura de la línea e indexación
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
Dpto. Telemática CUJAE
Curso 2003-2004
Estructura de la línea e indexación
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

Dpto. Telemática CUJAE


Curso 2003-2004
Estructura de la línea e indexación
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=1 a=1
if a==3: if a==3:
print a print a
print a+1 print a+1
print a-1 print a-1

Dpto. Telemática CUJAE


Curso 2003-2004
Estructura de la línea e indexación
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.

Dpto. Telemática CUJAE


Curso 2003-2004
Estructura de la línea e indexación
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
Dpto. Telemática CUJAE
Curso 2003-2004
Estructura de la línea e indexación
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.

Dpto. Telemática CUJAE


Curso 2003-2004
Identificadores y palabras reservadas
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.

Dpto. Telemática CUJAE


Curso 2003-2004
Identificadores y palabras reservadas
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

Dpto. Telemática CUJAE


Curso 2003-2004
Literales
Los literales son una notación para expresar
los valores constantes de los tipos de datos
incorporados (aquellos definidos por el
lenguaje)

Dpto. Telemática CUJAE


Curso 2003-2004
Literales
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.

Dpto. Telemática CUJAE


Curso 2003-2004
Literales
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.


Dpto. Telemática CUJAE
Curso 2003-2004
Tipos de Datos
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/

Dpto. Telemática CUJAE


Curso 2003-2004
Literales
Enteros: 1 333 1209

Enteros largos:999999999999999 2L

Entero en notación octal: 01

Entero en notación hexadecimal: 0xA

Números con punto flotante: 1.2

Número imaginario: 8.9j

Dpto. Telemática CUJAE


Curso 2003-2004
Literales
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)

Dpto. Telemática CUJAE


Curso 2003-2004
Literales
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.
Dpto. Telemática CUJAE
Curso 2003-2004
Literales
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

Dpto. Telemática CUJAE


Curso 2003-2004
Literales
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”.”””

Dpto. Telemática CUJAE


Curso 2003-2004
Literales
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

Dpto. Telemática CUJAE


Curso 2003-2004
Cadena de Documentación
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__”.

Dpto. Telemática CUJAE


Curso 2003-2004
Cadena de Documentación
Programa de ejemplo

def example1():
‘‘‘ Esta es la cadena \nde
documentación.´´´
print example1().__doc__
def example2():
“Documentación”
example1(); print
example2.__doc__

Dpto. Telemática CUJAE


Curso 2003-2004
FIN
Por favor, nos sería muy útil que cualquier
sugerencia o error que encontrase en el
presente documento nos lo hicieran llegar a:

[email protected]

Dpto. Telemática CUJAE


Curso 2003-2004

También podría gustarte