Hi, I am trying to teach myself Python and have a good book to help me but I am stuck on something and I would like for someone to explain the following piece of code for me and what it's actually doing. Certain parts are very clear but once it enters the "def store(data, full_name): ...." function and the "def lookup()..." function things get a little confusing for me. Specifically, lines 103-108 *and* Lines 110-111.
Lastly, I am not sure how to print the results I've put into this program either, the book I'm reading doesn't tell me. As you can tell, I am a beginner and I don't truly understand everything that is going on here...a lot, but not all.... Here is the code: 92 def init(data): 93 data['first'] = {} 94 data['middle'] = {} 95 data['last'] = {} 96 97 def store(data, full_name): 98 names = full_name.split() 100 if len(names) == 2: names.insert(1, '') 101 labels = 'first', 'middle', 'last' 103 for label, name in zip(labels, names): 104 people = lookup(data, label, name) 105 if people: 106 people.append(full_name) 107 else: 108 data[label][name] = [full_name] 109 110 def lookup(data, label, name): 111 return data[label].get(name) 112 113 114 MyNames = {} 115 init(MyNames) 116 store(MyNames, 'John Larry Smith') 117 lookup(MyNames, 'middle', 'Smith') -- http://mail.python.org/mailman/listinfo/python-list