回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我正在从API获取以下格式的词典列表:</p>
<p>例如</p>
<pre><code>xlist =[
{ "id":1, "day":2, name:"abc", ... },
{ "id":1, "day":3, name:"abc", ... },
{ "id":1, "day":2, name:"xyz", ... },
{ "id":1, "day":3, name:"xyz", ... },...
]
</code></pre>
<p>因此,为了在数据库中存储/优化查询,我必须将它们转换成这种格式。在</p>
<ul>
<li><p>什么是产生以下结构的有效或其他方法?在</p>
<pre><code>unique_xlist =[
{ "id":1, "day":2, name:["abc", "xyz"], ... },
{ "id":1, "day":3, name:["abc", "xyz"], ... },
]
</code></pre></li>
</ul>
<p>我在做什么:</p>
<pre><code> names = list(set([ v['name'] for v in xlist])) #-- GET UNIQUE NAMES
templist = [{k:(names if k == 'name' else v) \
for k, v in obj.items()} for obj in xlist] #-- Append Unique names
unique_xlist= {v['day']:v for v in templist}.values() #- find unique dicts
</code></pre>
<p>我不认为这是非常有效的,我使用3个循环只是为了找到独特的dicts一天。在</p>