Sunteți pe pagina 1din 22

Diccionarios

Es un tipo de objeto similar a una lista, los mismos son el resultado de


La asociacin clave-valor para el almacenamiento de las variables.
Ejemplo: miDiccionario = dict()
Caractersticas:
Los elementos no son indexados.
Acceso a elementos por la clave.
Las llaves son Hashable.
Son mutables(cambiantes).
Diccionarios
Implementaciones:

Contadores.
Ciclos.
Bsquedas.
Listas.
Memos.
Variables globales
*global miVariable
Tuplas
Secuencia de valores de cualquie tipo, similar a una lista o diccionario
Con la condicin de ser indexados por in valor Integer, haciendolas inm
mutables.
Ejemplo: miTupla = tuple()
Caractersticas:
La lista de valores son separados por coma (,).
Acceso a elementos por la clave.
Las llaves son Hashable.
Son mutables(cambiantes).
No se sobreescriben
*t[0] = 'A'
Se reemplazan
*t = ('A',) + t[1:]
Tuplas
Implementaciones:
Asignaciones de variables
email = aguere@mppi.gob.ve
usuario, dominio = email.split('@')Ciclos.
Bsquedas.
Listas.
Memos.
Archivos
Formato de persistencia de datos
>>> fout = open('output.txt', 'w')
>>> print fout
<open file 'output.txt', mode 'w' at
0xb7eb2410>
Archivos
Pipes
Objetos de representacin de un
programa de ejecucin
Clases y Objetos
UNA CLASE: es una plantilla (molde), que define atributos (lo que conocemos como variables) y
mtodos (lo que conocemos como funciones).En Python las clases se definen mediante la palabra
clave class seguida del nombre de la clase, dos puntos (:) y a continuacin, indentado, el cuerpo de
la clase.


UN OBJETO: es una entidad independiente con sus propios datos y programacin. Por ejemplo las
ventanas, menes, carpetas de archivos pueden ser identificados como objetos; el motor de un
auto tambin es considerado un objeto, en este caso, sus datos (atributos) describen sus
caractersticas fsicas y su programacin (mtodos) describen el funcionamiento interno y su
interrelacin con otras partes del automvil (tambin objetos).
Clases y Objetos: Ejemplo
Confeccionar una clase Empleado, definir
como atributos su nombre y sueldo.Definir
un mtodo inicializar que lleguen como
dato el nombre y sueldo. Plantear un
segundo mtodo que imprima el nombre,
sueldo y un mensaje si debe o no pagar
impuestos (si el sueldo supera a 3000
paga impuestos).
class empleado:
def inicializar(self,nomb,suel):
self.nombre=nomb
self.sueldo=suel
def imprimir(self):
print 'Su Nombre es:'
print self.nombre
print '<br>'
print 'Su sueldo es:'
print self.sueldo
print '<br>'
if self.sueldo >3000:
print 'Debe pagar impuestos'
person=empleado()
person.inicializar('Juan',5000)
person.imprimir()
Clases y Objetos: Los objetos mutables
Los objetos mutables son objetos que se pueden modificar. Por ejemplo, las listas y diccionarios.

Existen dos posibilidades de obtener objetos mutables las cuales son: modificando las variables o modificando los
objetos mutables a los que hacen referencia. Por ejemplo, en el caso de las listas:

1. En algunos casos las variables pasan a hacer referencia a otros objetos.
>>> a = [5] # La variable "a" se asigna al objeto "lista [5]" y ...
>>> b = a # ... la variable "b" se asigna al mismo objeto que "a" ...
>>> id(a), id(b) # ... por eso "a" y "b" tienen el mismo identificador
(45345888, 45345888)
>>> b = b + [6] # Pero si aadimos un elemento a "b" ...
>>> id(a), id(b) # ... la variable "b" hace ahora referencia al objeto "[5, 6]" ...
(45345888, 45346248)
>>> a, b # ... y por eso "a" y "b" son distintos.
([5], [5, 6])
Clases y Objetos: Los objetos mutables

2. En otros casos s que se modifican los objetos los objetos mutables a los que hacen referencia las
variables:

>>> a = [5] # La variable "a" identifica a la lista [5] ...
>>> b = a # ... la variable "b" identifica al mismo valor que a...
>>> id(a), id(b) # ... por eso "a" y "b" tienen el mismo identificador
(46531608, 46531608)
>>> b += [6] # Pero si aadimos un elemento a b usando += ...
>>> id(a), id(b) # ... tanto "a" como "b" siguen haciendo referencia a la misma lista ...
(46531608, 46531608)
>>> a, b # ... que ha cambiado con respecto a su valor inicial
([5, 6], [5, 6])
Clases y Objetos: Copy

En ciertas ocasiones es necesario hacer una copia de un diccionario (se desea preservar los valores originales). EL
mtodo copy() crea un nuevo diccionario con los mismos pares clave-valor, el cual es una copia superficial del
original porque los valores en si son los mismos, no copias.
>>> exten_orig = {'sistemas': '0234', 'admon': ['0235', '0236']}
>>> exten_nuevas = exten_orig.copy()
>>> exten_nuevas['sistemas'] = '0888'
>>> exten_nuevas['infor'] = '0555'
>>> exten_nuevas
{'infor': '0555', 'sistemas': '0888', 'admon': ['0235', 0236]}
>>> exten_orig
{'sistemas': '0234', 'admon': ['0235',0236]}
>>>
Clases y Funciones
Una funcin es un fragmento de cdigo con un nombre asociado que realiza
una serie de tareas y devuelve un valor.
def funcion(parametros)
Funcin pura: No modifica ninguno de los objetos que recibe
como parmetros.
Funcin Modificador: Que modifica uno o ms de los objetos que recibe
como parmetros.
Clases y Funciones
Ejemplo de Funcin Modificador:
def f(x, y):
x = x + 3
y.append(23)
print x, y
x = 22
y = [22]
f(x, y)
print x, y
Clases y Funciones
Los parmetros arbitrarios
def recorrer_parametros_arbitrarios(parametro_fijo, *arbitrarios):
print parametro_fijo
for argumento in arbitrarios:
print argumento
recorrer_parametros_arbitrarios('Fixed', 'arbitrario 1', 'arbitrario 2',
'arbitrario 3')
Clases y Mtodos
Los mtodos estn asociados con una clase y est pensado para
invocarse sobre instancias de una clase. Los mtodos son
semnticamente iguales a las funciones pero con 2 diferencias sintcticas:
Los mtodos se definen dentro de una definicin de clase para
explicitar la relacin entre la clase y el mtodo.
La sintaxis para invocar un mtodo es diferente de la de una llamada
a una funcin
Clases y Mtodos
Funciones Mtodos
Clases y Mtodos
Argumentos Opcionales
Argumentos que proporcionan un valor por omisin
Clases y Mtodos
El Mtodo de Inicializacin
Un mtodo especial que se invoca automticamente al crear un
nuevo objeto y que inicializa los atributos del objeto. El nombre de este
mtodo es _ _init_ _
Por convenio, el primer parmetro de un mtodo se llama self.
Clases y Mtodos
Sobrecarga de Operadores
Ampliar los operadores internos (+, -, *, >, <,etc.) de modo que
trabajen con tipos definidos por el usuario. Es til cuando definimos
nuevos tipos matemticos.
Clases y Mtodos
Polimorfismos
Una funcin que puede operar sobre ms de un tipo. Si todas las
operaciones realizadas dentro de una funcin se pueden aplicar a un tipo,
la funcin se puede aplicar a ese tipo.
Atributos de Clase
Una variable que se define dentro de la definicin de una clase pero
fuera de cualquiera de sus mtodos. Los atributos de la clase son
accesibles desde cualquier mtodo de la clase y estn compartidos por
todas las instancias de la misma

S-ar putea să vă placă și