Skip to content

Triangle Python Users Group: TriPython (formerly TriZPUG)

Personal tools
You are here: Home » Members » dhandy's Home » New-Style Classes Practical Overview

TriPython January, April, July, and October general meetings and monthly second Wednesday project nights meet at:

UNC Renaissance Computing Institute

TriPython February, May, August, and November general meetings meet at:

WebAssign: Online Homework and Grading

TriPython monthly first Tuesday project nights meet at:

Red Hat Annex

TriPython March, June, September, and December general meetings and monthly third Monday project nights meet at:

Caktus Consulting Group
Log in

New-Style Classes Practical Overview

Document Actions
A practical overview of the benefits of Python's "new-style" classes, available since Python 2.2, presented via documented, self-checking sample modules.

At our TriZPUG meeting on March 23, 2005, I presented an overview of the main benefits of "new-style" classes that were introduced in Python 2.2.

It is easy to keep on using the "old-style" classes, but it helps for Python programmers to become aware of the new features available to them.

What is so great about new-style classes? From my point of view, the most practical benefits are:

  1. properties
  2. super()
  3. descriptors
  4. static and class methods

The comments and docstrings in each of these sample modules describe a feature of new-style classes. Put all of the module files in the same directory. Run a module, and it will step through the "interactive session" in the module's docstrings. Press Enter until the the module finishes running. Because these modules use advanced doctest features and also descriptors, Python 2.4 is required.

Module Description Extract Python interactive sessions from docstrings and run them in "demo-mode". This module is imported by all the other modules. Intro, syntax of new-style classes properties super() descriptors static and class methods

June 20-21, 2020
at Red Har Annex:


TriPython endorses:

PyLadies RDU

Upcoming Events
TriPython November 2019 Meeting: Surviving without Python
WebAssign, NCSU Centennial Campus, 1791 Varsity Drive, Suite 200, Raleigh,
Raleigh Project Night
Red Hat Annex, 190 E Davie St, Raleigh,
Chapel Hill Project Night
Renaissance Computing Institute (RENCI), Biltmore Conference Room, 5th Floor, Europa Center, 100 Europa Drive, Suite 590, Chapel Hill,
TriPython December 2019 Meeting: Adventures with Rust
Caktus Group, 108 Morris St., Durham,
Durham Project Night
Caktus Group Tech Space, 108 Morris St., Durham,
« November 2019 »
Su Mo Tu We Th Fr Sa
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
18:00-21:00 Chapel Hill Project Night
18:00-21:00 Durham Project Night
19:00-21:00 TriPython November 2019 Meeting: Surviving without Python
Orders over $29.95 qualify for free shipping in the US.