You should be doing something like this:
01 class Thing(object):
02 def __init__(self, my_list=None):
03 if my_list is None:
04 my_list = []
04 self.list = my_list
See this post for an explanation as to why keyword arguments behave this way.