C
Ciantic
class MyObject(object):
.... pass
....Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'object' object has no attribute 'myvar'
Why simple inheritance from object does not cause errors at setattr,
yet direct init of object() does?
I was trying to "decor" objects, lists etc with own attributes that
could be used in templates and was sadly not permitted to do so:
File "<stdin>", line 1, in <module>
AttributeError: 'list' object has no attribute 'myvar'
(I could "solve" this by inheriting from list, but there are cases
where I can't do so, the data is coming elsewhere and wrapping it is
ugly, adding new attribute would be neater)
But my question now is why this setattr problem happens on some types?
What are the types that usually does not allow to arbitrary setattr?
.... pass
....Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'object' object has no attribute 'myvar'
Why simple inheritance from object does not cause errors at setattr,
yet direct init of object() does?
I was trying to "decor" objects, lists etc with own attributes that
could be used in templates and was sadly not permitted to do so:
Traceback (most recent call last):something = [1,2]
something.myvar = 'value'
File "<stdin>", line 1, in <module>
AttributeError: 'list' object has no attribute 'myvar'
(I could "solve" this by inheriting from list, but there are cases
where I can't do so, the data is coming elsewhere and wrapping it is
ugly, adding new attribute would be neater)
But my question now is why this setattr problem happens on some types?
What are the types that usually does not allow to arbitrary setattr?