我有一个字符串列表,每个字符串作为一个字符。它们是按单词顺序排列的。如何将每个字符放在一个字符串中。例子:
list_characters = ['H', 'e', 'l', 'l', 'o']
成为:
'Hello'
请帮忙,谢谢
我有一个字符串列表,每个字符串作为一个字符。它们是按单词顺序排列的。如何将每个字符放在一个字符串中。例子:
list_characters = ['H', 'e', 'l', 'l', 'o']
成为:
'Hello'
请帮忙,谢谢
In [1]: s = ['H', 'e', 'l', 'l', 'o']
In [2]: ''.join(s)
Out[2]: 'Hello'
该join
方法与您可能熟悉的其他方法有些不同,因为您首先将要使用的元素“连接”在一起,然后在其上调用该方法。以下是更多示例:
In [4]: print '\n'.join(s)
H
e
l
l
o
In [5]: ' '.join(s)
Out[5]: 'H e l l o'
In [6]: 'GOODBYE'.join(s)
Out[6]: 'HGOODBYEeGOODBYElGOODBYElGOODBYEo'
该join
方法接受任何“可迭代”,这是您可以“迭代”的任何内容(例如列表,如您的示例中所示)。字符串本身也是可迭代的,所以你甚至可以这样做:
In [7]: s = 'Hello'
In [8]: 'Z'.join(s)
Out[8]: 'HZeZlZlZo'
虽然我强烈推荐上面 RocketDonkey 提到的 join() 方法,但另一种方法是:
reduce(lambda acc,x:acc+x,['H', 'e', 'l', 'l', 'o'])
您需要使用join()
将列表的所有元素连接成这样的字符串:
test = ['H', 'e', 'l' 'l', 'o']
''.join(test)
如果您想在它们之间加入“-”字符,请使用以下命令:
test = ['H', 'e', 'l' 'l', 'o']
'-'.join(test)
您可以通过各种方法将列表的元素连接成一个字符串:
str=""
for i in list:
str+=i
print(str) #hello
list = ['h', 'e', 'l', 'l', 'o']
str=""
print("".join(list)) #hello
str = "".join([str(elem) for elem in list])
print(str) #hello
str = ''.join(map(str, list))
print(str) #hello
#注意:如果您也有 int 元素,可以使用最后两种方法,因为 Python 不允许连接具有不同数据类型的元素。