PyCon 2016 in Portland, Or
hills next to breadcrumb illustration

Tuesday 10:50 a.m.–11:20 a.m.

What Is and What Can Be: An Exploration from `type` to Metaclasses

Dustin Ingram

Audience level:
Intermediate
Category:
Python Core (language, stdlib, etc.)

Description

Most of us use `type` every day, but few can say they know it well. This talk explores `type` and along the way, reveals how it relates to `object`, `class` and more, eventually arriving at deeper understanding of metaclasses in Python.

Abstract

Most of us use `type` every day, but few can say they know it well. This talk begins with the question: "Why can't we do `j = object(); j.hi = 'there'`?" # type Type in a general sense is a fundamental part of any language, but often we only need to scratch the surface of `type` in everyday Python. When we look deeper, we realize that `type` is a the center of nearly everything in Python! # Metaclasses Metaclasses can easily be dismissed as being too complex to be fully understood by the average Pythonista, but this talk shows that with a better understanding of `type`, metaclasses can easily be "de-mystified" and made into yet another tool in the toolbox of Python.