Mercurial > hg > config
changeset 717:d6f659169b49
mutable defaults -> example
author | Jeff Hammel <k0scist@gmail.com> |
---|---|
date | Thu, 23 Oct 2014 15:29:48 -0700 |
parents | ca1f21d9e621 |
children | cd9d65e6e2ab |
files | python/example/mutable_defaults.py python/mutable_defaults.py |
diffstat | 2 files changed, 15 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/python/example/mutable_defaults.py Thu Oct 23 15:29:48 2014 -0700 @@ -0,0 +1,15 @@ +#!/usr/bin/env python + +# see also: http://www.daniweb.com/software-development/python/threads/66697 + +class Foo(object): + def __init__(self, mutable=['default']): + self.foo = mutable + self.foo.append(1) + +if __name__ == '__main__': + bar = Foo() + print len(bar.foo) + fleem = Foo() + print len(fleem.foo) + assert len(fleem.foo) == 2, "Don't use default mutable arguments!"
--- a/python/mutable_defaults.py Thu Oct 23 14:08:17 2014 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +0,0 @@ -#!/usr/bin/env python - -# see also: http://www.daniweb.com/software-development/python/threads/66697 - -class Foo(object): - def __init__(self, mutable=['default']): - self.foo = mutable - self.foo.append(1) - -if __name__ == '__main__': - bar = Foo() - print len(bar.foo) - fleem = Foo() - print len(fleem.foo) - assert len(fleem.foo) == 2, "Don't use default mutable arguments!"