4

スポーツ選手のリストが 2 つあります。1 つは単純に構成されています。

['Lastname, Firstname', 'Lastname2, Firstname2'..]

2 番目は構造化されたリストのリストです。

[['Firstname Lastname', 'Team', 'Position', 'Ranking']...]

最終的には、2 番目のリストの内容を検索し、最初のリストから一致する名前があれば情報を取得したいと考えています。

簡単にするために、リスト 2 の書式設定に一致させるために、「Lastname, Firstname」を「Firstname Lastname」に交換する必要があります。

どんな助けでも素晴らしいでしょう。ありがとう!

4

1 に答える 1

9

名前のリスト内の順序を次のように入れ替えることができます。

[" ".join(n.split(", ")[::-1]) for n in namelist]

説明: これは、各項目に対して何かを行うリスト内包表記です。いくつかの中間バージョンとそれらが返すものを次に示します。

namelist = ["Robinson, David", "Roberts, Tim"]
# split each item into a list, around the commas:
[n.split(", ") for n in namelist]
# [['Robinson', 'David'], ['Roberts', 'Tim']]

# reverse the split up list:
[n.split(", ")[::-1] for n in namelist]
# [['David', 'Robinson'], ['Tim', 'Roberts']]

# join it back together with a space:
[" ".join(n.split(", ")[::-1]) for n in namelist]
# ['David Robinson', 'Tim Roberts']
于 2013-03-29T14:12:02.933 に答える