[Python-Dev] PEP 8 addition: Preferred property style? (original) (raw)

Gerrit Holl gerrit at nl.linux.org
Thu Jan 22 15:03:44 EST 2004


Hello,

currently, PEP 8 does not have any advice about the preferred style in defining properties. There are only two places in the standard library where they are used (socket.py and xml/dom/minicompat.py), so that doesn't provide much information either. Personally, I don't like the namespace cluttering caused by defining __get, __set and/or __del. Since I saw someone[0] on c.l.py using it, I always use this style:

def mtime():
    doc = "Modification time"

    def get(self):
        return os.path.getmtime(str(self))

    def set(self, t):
        return os.utime(str(self), (self.atime, t))

    return get, set, None, doc
mtime = property(*mtime())

I like it, because it's very readable for me, and doesn't clutter the namespace. Two questions about this style:

- Is it tolerable to use it in the standard library (PrePEP)?
- Should it be advised for or against in PEP 8, or neither?

Gerrit

[0] http://tinyurl.com/2rydd



More information about the Python-Dev mailing list