Python Sintax
Python Sintax
febrero de 2012
1 Introducción a Python
1 En esta sesión, la meta es que estos tres conceptos sean explicados y aplicados de forma
muy natural.
2 4 Sintaxis es como en el español, la forma en la que se programa (las palabras clave,
puntuación, etc.). O sea, qué interpreta como qué la computadora.
1
a lenguaje de máquina para ejecutarse. Que Python sea de alto nivel sig-
nica que hay muchas operaciones básicas que no deben hacerse, como el
manejo de la memoria (reservar y liberar memoria), etc., que se hacen en
lenguajes como C.
$ python
Asignación de variables:
a=2 # un entero
b = 0.5 # un decimal.
c = a+b # el resultado de una operación
2
palabras = 'hola mundo' # un texto. También con comillas dobles.
lista2_de_cosas=[2,taller,0.1+3j] # una lista (de objetos)
tupla = (1,0,5) # una lista que no cambia nunca (inmutable)
algo = [lista2_de_cosas,tupla, a, palabras] # lista que contiene
más listas y otras cosas
2+6.2
fisica compu + tacional
2*'pa'
[a,b,2,4] + [6,'z']
3
2.1 Manipulación básica de listas
Las listas contienen objetos (no tienen por qué ser del mismo tipo)
>>>a=[1,3,5,7,'impares']
>>>a[0]
1
>>>a[4]
'impares'
>>>a[-1] #Python es de tan alto nivel que reconoce
esto como el último elemento de la lista
'impares'
#otro ejemplo
>>>b = [1,2]
>>>c = [b,'a',0]
>>>c[0]
[1,2]
>>>c[0][0]
1
>>>c[0][1]
2
# una forma de construir matrices.
Objetos mutables e inmutables. Tome varios elementos de una lista:
a[0:1]. Las listas son objetos mutables, es decir, que si ud hace b=a,
y luego modica b, también está modicando a. Para no modicar a,
debe copiar la lista, o sea, b = list(a) o bien b=a[:]. Ahora sí, si ud
modica b, ya no se modica a. Al contrario, los números, texto y tuplas
son inmutables, o sea que si x=2, si yo hago y=x y modico y, no se
modica x. Más adelante volveremos a usar estos conceptos.
Añadir a la lista:
4
Unir dos listas. Con el operador +.
3 Scripts
Básicamente, un script es un archivo de texto con una lista de órdenes para el
intérprete de Python.
#!/usr/bin/python
print hola mundo
$ python holamundo.py
4 Objetos y librerías
En el ejemplo de la calculadora utilizamos la librería math. La sintaxis es:
4.1 Objetos
>>>a=sphere()
>>>a.color=color.red
>>>a.pos = vector(1,1,1)
5
El color es un objeto también. El vector de posición es otro objeto también.
Y las coordenadas del vector de posición (1, 1, 1) son los atributos del
objeto vector.
class perro:
pass
Cuando hago
neron = perro()
neron=perro()
fido=perro()
chata=perro()
neron.pulgas=7
6
5 Estructuras de control
5.1 if / else
For :
for x in ["Mercurio","Venus","Tierra","Marte"]:
print x + " es un planeta interior del Sistema Solar"
3 La palabra correcta en español debería ser sangrar el texto, pero se usa muy frecuente-
mente en informática el anglicismo indentación.
7
Python es un lenguaje de alto nivel, por lo que al usar
for i in range(100):
numeros.append(i*3+(i/2)*1j)
class vaso:
pass
vaso.nivel = 0
vaso.h = 15
dy = 0.3
while vaso.nivel <= vaso.h:
vaso.nivel = vaso.nivel + dy # [*]
print "vaso lleno"
8
6 Funciones
def f(x):
return 5*x+2
y = f(0.3)
muy intuitivo.
def calcular_radio(masa):
densidad = 2
volumen = masa/densidad
radio = (3*volumen/(4*3.14))**(1/3)
return radio
R = 0.2
print R
R = calcular_radio(2.5)
print R
def switch(lampara):
if lampara.bombillo == "Encendido":
lampara.bombillo = "Apagado"
if lampara.bombillo == "Apagado":
lampara.bombillo = "Encendido"
class lampara:
pass
milampara = lampara()
milampara.bombillo = "Apagado"
switch(milampara)
print milampara.bombillo
9
switch(milampara)
print milampara.bombillo
switch(milampara)
print milampara.bombillo
¾hay algo diferente aquí? Pues que la función no tiene un return. Los
objetos en Python pueden ser de dos tipos: mutables e inmutables. Los
números, cadenas de texto y tuplas son objetos inmutables. Se comportan
como el ejemplo anterior a este, y requieren de un return. En cambio, la
lámpara es un objeto mutable. Los objetos creados con class, y las listas,
son objetos mutables en Python, y como en este caso, no fue necesario
un return. En el primer ejercicio de la sección 2.1 se explica mejor la
diferencia entre mutable e inmutable. Observe también que las maneras
de llamar a la función son diferentes:
7 Comentarios nales
Hay muchísimo más por aprender de Python. Lo que vimos es apenas lo
indispensable para hacer una simulación. ½Pidan más talleres!
milampara.switch()
10
References
[1] González Duque, Raúl. Python para todos. Descargable en formato
PDF desde http://mundogeek.net/tutorial-python/
Licencia
© 2011 Andrée Oliva PCF-LIAP.
Este documento está disponible bajo una licencia Creative Commons
Attribution-ShareAlike (atribucióncompartir igual) 3.0 Unported. Para leer
una copia de la licencia, visite http://creativecommons.org/licenses/by-sa/3.0/
11