0

次のような文字列のリストがあります

['ABC', 'DEF', 'GHIJ']

そして、各文字列の最初の文字を含む文字列のリストが必要です。つまり

['A', 'D', 'G'].

map と list: の最初の要素を返す関数を使用してそれを行うことを考えましたmy_list[0]。しかし、どうすればこれをに渡すことができmapますか?

ありがとう。

4

6 に答える 6

5

あなたが試すことができます

In [14]: l = ['ABC', 'DEF', 'GHIJ']

In [15]: [x[0] for x in l]
Out[15]: ['A', 'D', 'G']
于 2013-04-01T09:59:21.260 に答える
1

一方通行:

l1=['ABC', 'DEF', 'GHIJ']
l1=map(lambda x:x[0], l1)
于 2013-04-01T10:05:45.977 に答える
1

@avasalのようなリスト内包表記を使用する必要がありますが、それはより Pythonic であるためです。map

>>> from operator import itemgetter   
>>> L = ['ABC', 'DEF', 'GHIJ'] 
>>> map(itemgetter(0), L)
['A', 'D', 'G']
于 2013-04-01T09:59:05.633 に答える
1

次のようにリスト内包表記を使用します。

results = [i[0] for i in mySrcList]
于 2013-04-01T10:02:21.937 に答える
0
a=['ABC','DEF','GHI']
b=[]
for i in a:
    b.append(i[0])

b必要な配列です。

于 2013-04-01T10:02:08.373 に答える
-1

これを試して。

>>> myArray=['ABC', 'DEF', 'GHIJ']
>>> newArray=[]
>>> for i in map(lambda x:x[0],myArray):
...     newArray.append(i)
...
>>> print(newArray)
['A', 'D', 'G']
于 2013-04-01T10:11:24.417 に答える