title: Python object as an optional argument of a class instructor
body: <p>When creating a new instance (say A) of a class, I want an instance (say B) of another class to be an optional argument of the constructor. If B is given as an argument, then I want the constructor of A to specify that B belongs to A. If not given as an argument, I want my constructor to create a NEW instance (say C) of the same class as where B belong to and specify that this new instance belongs to A. </p>
  
  <p>More specifically, I'm working on an arrival process for a hospital. Arrivals happen according to a stochastic process. I want it to be possible to specify whether an <code>arrival</code> event is regarding an already existing <code>customer</code> (in this case, I should give it as an argument) or that it is going to be a NEW <code>customer</code>, in which case my <code>arrival</code> constructor should create a new instance of <code>customer.</code> </p>