Whoops, I forgot to do an assignment... > So try > > def dry(self): return Prune() > > > class Prune: > > def __str__(self): > > return 'prune' > > > > weapon = Damson() > > weapon.dry() weapon = weapon.dry() > > print weapon > > Should work as expected... Alan G