In article <mailman.1847.1237048379.11746.python-l...@python.org>,
Maxim Khitrov  <mkhit...@gmail.com> wrote:
>
>Very simple question on the preferred coding style. I frequently write
>classes that have some data members initialized to immutable values.
>For example:
>
>class Test(object):
>    def __init__(self):
>        self.some_value = 0
>        self.another_value = None
>
>Similar effect can be achieved by defining some_value and
>another_value for the entire class, like so:
>
>class Test(object):
>    some_value = 0
>    another_value = None
>
>The advantage of doing this is that the assignments are evaluated once
>and thus the creation of that class is a bit faster. Access is still
>performed through self.some_value and self.another_value. Is there a
>reason to prefer the first style over the second?

Well, as you can see from reading this whole thread, it can be the source
of some confusion.  Nevertheless, I personally sometimes use the style of
initializing at the class level.  I think it's probably worth creating a
style guide entry for this issue if you're using Python for your
employer.
-- 
Aahz (a...@pythoncraft.com)           <*>         http://www.pythoncraft.com/

"At Resolver we've found it useful to short-circuit any doubt and just
refer to comments in code as 'lies'. :-)"
--Michael Foord paraphrases Christian Muirhead on python-dev, 2009-3-22
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to