2014-02-28 108 views

回答

10

使用map

map(''.join, list01) 

或者用list comprehension

[''.join(x) for x in list01] 

两个输出:

['abc', 'ijk', 'xyz'] 

注意的是Python 3,map返回地图对象,而不是名单。如果你确实需要一个列表,你可以将它包装在list(map(...))中,但是在那一点上列表理解更清晰。

3

使用str.joinlist comprehension

>>> list01 = [ ['a', 'b', 'c'], ['i', 'j', 'k'], ['x', 'y', 'z'] ] 
>>> [''.join(x) for x in list01] 
['abc', 'ijk', 'xyz'] 
>>> 
2
>>> map(''.join, list01) 
['abc', 'ijk', 'xyz'] 
1

嗨,你可以使用连接implode在一个字符串中的元素,然后追加。如果你不想使用地图。

# Your list 
    someList = [ ['a', 'b', 'c'], ['i', 'j', 'k'], ['x', 'y', 'z'] ] 
    implodeList = [] 

    # make an iteration with for in 
    for item in someList : 
     implodeList.append(''.join(item)) 

    # printing your new list 
    print (implodeList) 
+1

不需要'str'调用。 'join'返回一个字符串。 – squiguy

+0

有理由。谢谢!! – afym