我有一个python列表作为字符串,我想按顺序和顺序之间的间隔打印出来

时间:2019-04-18 13:04:21

标签: python python-3.x list

我有一个python列表,我想按顺序打印它们并在它们之间隔开

x = "hello world"
>>> x[2:10]  # this prints from 'l' to 'd' allway

>>> x[2:10:2]  # this prints from 'l' to 'd' in the order of two,
'lowr'

我如何像'l o w r'一样打印它,在它们之间放置一个空格字符而没有循环?所以看起来像是'l-o-w-r'

4 个答案:

答案 0 :(得分:4)

查看Python的str.join()函数。它使您可以加入任何迭代,同时在""中的引号.join()之间插入任何内容。

像这样:

x = "hello world"

" ".join(x[2:10:2])

答案 1 :(得分:2)

只需将列表中的字符用单个空格或-连接起来即可。这使用了join,它为您提供了一个字符串,该字符串由给定的分隔符与列表的元素缝合在一起

x = "hello world"
print(' '.join(x[2:10:2]))
#l o w r
print('-'.join(x[2:10:2]))
#l-o-w-r

答案 2 :(得分:1)

字符串有一个.join()方法,该方法将可迭代的元素与您在中间给出的字符串连接在一起。例如

>>> x = 'hello world'
>>> sep = ' '  # your separator is a space
>>> sep.join(x[2:10:2])
'l o w r'

答案 3 :(得分:1)

不确定没有循环的含义,但是您可以执行以下操作:

x = "hello world"
' '.join(y for y in x[2:10:2])