Python dynamic attribute creation
Ethan Furman
ethan at stoneleaf.us
Tue Jun 29 13:17:55 EDT 2010
WANG Cong wrote:
> On 06/27/10 12:01, Carl Banks <pavlovevidence at gmail.com> wrote:
>
>> On Jun 25, 8:24 pm, WANG Cong <xiyou.wangc... at gmail.com> wrote:
>>> Understand, but please consider my proposal again, if we switched to:
>>>
>>> setattr(foo, 'new_attr', "blah")
>>>
>>> by default, isn't Python still dynamic as it is? (Please teach me if I
>>> am wrong here.)
>>>
>>> This why I said the questionable thing is not so much related with dynamic
>>> programming or not.
>> Because it makes dynamicism harder to do.
>>
>> Like I said, Python's goal isn't simply to make dynamicism possible,
>> it's to make it easy.
>>
>> "foo.new_attr = 'blah'" is easier than using setattr.
>>
>
> I do agree it's easier, but why do we need this to be easy? This is
> really my question.
To excerpt from
http://www1.american.edu/cas/econ/faculty/isaac/choose_python.pdf
<quote>
Choose the simple over the complex, and the complex over the complicated.
</quote>
> Also, since it is easier, why not drop the harder one, setattr()?
Because setattr and friends are needed when the variable names are
constructed dynamically.
~Ethan~
More information about the Python-list
mailing list