A simple class class Stack: def __init__(self): self.stack = [] def push(self, x): self.stack.append(x) def pop(self): return self.stack.pop() def isempty(self): return not len(self.stack) All methods take "self" argument All members and methods are public by default Python Language Reference shows how to implement classes that act like native types