擅长:python、mysql、java
<p>您可以这样做,假设您想要每个字符串的唯一第一个<em>单词</em>:</p>
<pre><code>bb = ['Gppe (Aspirin Combined)',
'Gppe Cap (Migraine)',
'Gppe Tab',
'Abilify',
'Abilify Maintena',
'Abstem',
'Abstral']
result = set(map(lambda x: x.split()[0], bb))
print(result)
</code></pre>
<p><strong>输出</strong></p>
<pre><code>{'Gppe', 'Abstral', 'Abilify', 'Abstem'}
</code></pre>
<p>如果要按外观顺序列出唯一元素,可以执行以下操作:</p>
<pre><code>bb = ['Gppe (Aspirin Combined)',
'Gppe Cap (Migraine)',
'Gppe Tab',
'Abilify',
'Abilify Maintena',
'Abstem',
'Abstral']
seen = set()
result = []
for e in bb:
key = e.split()[0]
if key not in seen:
result.append(key)
seen.add(key)
print(result)
</code></pre>
<p><strong>输出</strong></p>
<pre><code>['Gppe', 'Abilify', 'Abstem', 'Abstral']
</code></pre>
<p>作为第一种解决方案的替代方案,您可以:</p>
<ol>
<li>作者:Jean-Françoisfare<code>{x.split()[0] for x in bb}</code></li>
<li>由@RoadRunner<code>set(x.split()[0] for x in bb)</code>建议</li>
</ol>