Una de las cosas por las cuales Python es genial es el uso de Namedtuples. Estas se pueden utilizar para definir una Clase de forma más rápida que definirla en forma manual:
A continuación un ejemplo del uso de las namedtuples:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | #Uso de namedtuples para la definición de clases: >>> from collections import namedtuple >>> Car = namedtuple('Car', 'color mileage') # La clase "Car" trabaja como se espera: >>> my_car = Car('red', 3812.4) >>> my_car.color 'red' >>> my_car.mileage 3812.4 # También se tiene una representación en cadenas: >>> my_car Car(color='red' , mileage=3812.4) # Como las tuplas, las namedtuples son inmutables: >>> my_car.color = 'blue' AttributeError: "can't set attribute" # Como el nombre de los archivos se pasa, los valores # invalidos causan ValueError exceptions >>> import collections >>> try: ... collections.namedtuple('Person', 'name class age gender') ... except ValueError as err: ... print(err) ... Type names and field names cannot be a keyword: 'class' >>> import collections >>> try: ... collections.namedtuple('Person', 'name age gender age') ... except ValueError as err: ... print(err) ... Encountered duplicate field name: 'age' |
Enlaces que podía revisar:
- Uso de collections
- Uso del namedtuple
- Otros ejemplos con namedtuple