2016-04-12 233 views
0

我不知道为什么这个join()在列表上执行不起作用。这个join()为什么不起作用?

这里是我的代码:

list_1 = ['a', 'b', 'c'] 
print (list_1) 
' '.join(list_1) 
print (list_1) 

这是返回什么,当我运行它:

['a', 'b', 'c'] 
['a', 'b', 'c'] 

回答

4

join()不修改或重新分配到位列表,而是返回它创建的字符串:

list_1 = ['a', 'b', 'c'] 
print (list_1) 
list_1_string = ' '.join(list_1) 
print (list_1_string) 

the str.join(iterable) docs

返回一个字符串,它是可迭代迭代中字符串的串联。如果迭代中有任何非字符串值(包括字节对象),则会引发TypeError。元素之间的分隔符是提供此方法的字符串。

+0

噢,好的谢谢 - 我以为它修改它并返回'None' – superato

1

您还没有加入存储的结果...

list_1 = ' '.join(list_1) 
1

str.join(<iterable>)回报一个str。它不会将列表变为str(!)。做以下几点,

s = " ".join(list_1) 
print(s)