Use cases for del
George Sakkis
gsakkis at rutgers.edu
Wed Jul 6 23:29:45 EDT 2005
"Grant Edwards" wrote:
> In 2005-07-07, Leif K-Brooks <eurl... at ecritters.biz> wrote:
>
> - Hide quoted text -
> - Show quoted text -
> > Grant Edwards wrote:
> >> 1) So I know whether an parameter was passed in or not. Perhaps
> >> it's not considered good Pythonic style, but I like to use a
> >> single method for both get and set operations. With no
> >> parameters, it's a get. With a parameter, it's a set:
>
> >> class demo:
> >> def foo(v=None):
> >> if v is not None:
> >> self.v = v
> >> return self.v
>
> > _NOVALUE = object()
> > class demo:
> > def foo(v=_NOVALUE):
> > if v is _NOVALUE:
> > return self.v
> > else:
> > self.v = v
>
> Apart from the change in the logic such that the set operation
> doesn't return a value, how is that any different? You're just
> creating your own non-integer-value "None" object instead of
> using the one built in to the language.
>
> > But what's wrong with properties?
>
> Huh?
I guess he means why not define foo as property:
class demo(object):
foo = property(fget = lambda self: self.v,
fset = lambda self,v: setattr(self,'v',v))
d = demo()
d.foo = 3
print d.foo
George
More information about the Python-list
mailing list