擅长:python、mysql、java
<p>最简单的方法是:</p>
<pre><code>def first_names(names):
for name in names:
yield name.split()[0]
</code></pre>
<p>例如</p>
^{pr2}$
<p>在某些情况下,如果您只想要第一个单词,您可能不想拆分字符串。。。e、 g.如果字符串真的很长。在这种情况下,您可以使用<code>str.find</code>来获取字符串中第一个空格的位置,然后将其分割到该点,只给您提供名字:</p>
<pre><code>>>> def first_names(names):
... for name in names:
... idx = name.find(' ')
... yield name[:idx] if idx > 0 else name
...
>>> print list(first_names(["Katie von Martin", "Bob Austin Marley", "John Travolta", "Josh Hartnett"]))
['Katie', 'Bob', 'John', 'Josh']
</code></pre>
<p>然而,在实践中,这几乎从来没有必要。在</p>