<p>用一本以人名为钥匙的字典。比如:</p>
<pre><code>people = {}
people["Billy Bloggs"] = ['23','Male','263 Evergreen Tce'] # store to dict
print ( people["Billy Bloggs"] ) # get stuff out of dict
</code></pre>
<p>更好的方法是,将属性名称也存储为dict:</p>
<pre><code>people["Billy Bloggs"] = { 'Age':23, 'Gender':'M', 'Address':'263 Evergreen Tce' }
print ( people["Billy Bloggs"]['Age'] ) # Get billy's age
</code></pre>
<p>可以使用以下语法循环遍历字典的元素:</p>
<pre><code>>>> mydict = {'a':'Apple', 'b':'Banana', 'c':'Cumquat'}
>>> for key, value in mydict.iteritems():
... print ('Key is :' + key + ' Value is:' + value)
...
Key is :a Value is:Apple
Key is :c Value is:Cumquat
Key is :b Value is:Banana
</code></pre>
<p>请注意,不能保证数据的顺序。您可以按<code>A, B, C</code>的顺序插入数据,然后返回<code>A, C, B</code>。</p>
<p><strong>注意</strong>:dict的键(在本例中是人名)被限制为唯一的。因此,如果将数据存储到同一个名称两次,那么第一个key:value对将被覆盖。</p>
<pre><code>mydict["a"] = 5
mydict["a"] = 10
print (mydict["a"]) # prints 10
</code></pre>
<hr/>
<p>旁注:您的一些<code>gen*()</code>函数几乎肯定可以被<code>random.choice()</code>替换:</p>
<pre><code>import random
first_names = ['Alice','Bob','Charlie','Dick','Eliza']
random_first_name = random.choice(first_names)
</code></pre>