如何在Python中将列表转换为带空格的字符串?

问题描述 投票:68回答:5

如何在Python中将列表转换为以空格分隔的字符串?

例如,我想转换此列表:

my_list = [how,are,you]

进入字符串"how are you"

空间很重要。我不想得到howareyou,就像我迄今为止尝试使用的那样

"".join(my_list)
python string list spaces
5个回答
152
投票
" ".join(my_list)

你需要加入空格而不是空字符串......


13
投票

我会把它作为一种替代方案,只是为了它,尽管与" ".join(my_list)相比,它几乎没用。对于非字符串(例如int的数组),这可能更好:

" ".join(str(item) for item in my_list)

2
投票

对于Non String list,我们也可以这样做

" ".join(map(str, my_list))

0
投票

因此,为了获得所需的输出,我们首先应该知道该函数是如何工作的。

python文档中描述的join()方法的语法如下:

string_name.join(iterable)

需要注意的事项:

  • 它返回与string元素连接的iterable。元素之间的分隔符是string_name
  • iterable中的任何非字符串值都会引发TypeError

现在,要添加空格,我们只需要用string_name" "替换' '它们都可以工作并放置我们想要连接的iterable

所以,我们的函数看起来像这样:

' '.join(my_list)

但是,如果我们想在white spaces中添加特定数量的iterable呢?

我们只需要这样做:

str(number*" ").join(iterable)

这里number将是用户输入。

所以,例如,如果number=4

然后,str(4*" ").join(my_list)的输出将是how are you,所以在每个单词之间有4个空格。


-8
投票

为什么不在列表本身的项目中添加空格,例如: list = ["how ", "are ", "you "]

© www.soinside.com 2019 - 2024. All rights reserved.