擅长:python、mysql、java
<p>尝试通过<a href="https://stackoverflow.com/questions/1747817/create-a-dictionary-with-list-comprehension-in-python">dictionary comprehension</a>创建字典:</p>
<pre><code>names = ['name1', 'name2', 'name3']
ages = ['age1', 'age2', 'age3']
name_age_dict = {i+1:{names[i],ages[i]} for i in range(len(names))}
>>> name_age_dict
{1: {'age1', 'name1'}, 2: {'name2', 'age2'}, 3: {'age3', 'name3'}}
</code></pre>
<p>它比for循环更干净,并且保持可读性。本质上,它遍历列表中的每一项(假设列表具有相同的长度),并为每个列表中的每一项创建一个<code>{name, age}</code>字典,将索引号(+1跳过0)指定为该字典的键。你知道吗</p>
<p>一些新的python用户很难理解list和dict语法,因此,如果您更喜欢将其视为循环,这可以实现同样的效果:</p>
<pre><code>name_age_dict = {}
for i in range(len(names)):
name_age_dict[i+1] = {names[i], ages[i]}
>>> name_age_dict
{1: {'age1', 'name1'}, 2: {'name2', 'age2'}, 3: {'age3', 'name3'}}
</code></pre>