title: Add attribute to class list to return all objects with specific attribute
body: <p>I have the following problem:</p>
  
  <p><strong>Let's set the scene!</strong></p>
  
  <p>Say I have a class Person with a few basic attributes:</p>
  
  <pre><code>class Person(object):
      def __init__(self, name=None, gender=None, single=None):
          self.name=name
          self.gender=gender
          self.single=single
  </code></pre>
  
  <p>And I create a list class called Dating, which will hold all Person objects</p>
  
  <pre><code>class Dating(object):
      def __init__(self):
          self.members=[]
  
  My_People=Dating()
  
  My_People.members.append(Person("Jack","Male",False))
  My_People.members.append(Person("Jill","Female",True))
  My_People.members.append(Person("George","Male",True))
  My_People.members.append(Person("Sandy","Female",False))
  </code></pre>
  
  <p><strong>Right, so what is the problem?</strong></p>
  
  <p>Is it possible to assign an attribute to the list class to access single members of the My_People list by creating some sort of attribute like:</p>
  
  <pre><code>My_People.members.singles
  </code></pre>
  
  <p>So that this would return a list of Person objects that have the <em>single == True</em> attribute?</p>
  
  <p>Thanks for all the help. (by the way, I have got very little previous experience with Python)</p>