class Data_Set(dict):
def __init__(self, dict_of_datum_objects, required=None):
self.keys = dict_of_datum_objects.keys
self.values = dict_of_datum_objects.values
self.required = required
For some reason, whenever I create an instance of this class with data, all I get is an empty dictionary. As soon as I redefine my class to no longer inherit from Python dictionary, then I get expected behavior, but now I don't have benefit of Python dictionary methods such as pop and has_key:
sdso = Data_Set({'full_name':'full_name_obj', 'address_line_1':'address_line_1_obj'})
>>> sdso
{}
>>> class Data_Set:
def __init__(self, dict_of_datum, required=None):
self.keys = dict_of_datum.keys
self.values = dict_of_datum.values
self.items = dict_of_datum.items
self.required = required
>>> sdso = Data_Set({'full_name':'full_name_obj', 'address_line_1':'address_line_1_obj'})
>>> sdso
<__main__.Data_Set instance at 0x419690ac>
>>> sdso.keys()
['full_name', 'address_line_1']
>>> sdso.pop('full_name')
Traceback (most recent call last):
File "<pyshell#311>", line 1, in -toplevel-
sdso.pop('full_name')
AttributeError: Data_Set instance has no attribute 'pop'
Am I doing something wrong ?
_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor