Python 如何交替排列两个字符串?

Python 如何交替排列两个字符串?,python,Python,可能重复: 这里我有一个问题,当两个字符串的单词一个接一个出现时,如何把它们连在一起。。我的意思是,作为一个例子,如果第一行是abc,第二行是defgh,那么最后的答案应该是adbecfgh 这是我的代码,但它出现在同一行 x = raw_input ('Enter 1st String: ') y = raw_input ('Enter 2st String: ') z = [x, y] a = ''.join(z) print (a) 有人知道这个错误吗?您想要的是来自以下方面的循环配方

可能重复:

这里我有一个问题,当两个字符串的单词一个接一个出现时,如何把它们连在一起。。我的意思是,作为一个例子,如果第一行是abc,第二行是defgh,那么最后的答案应该是adbecfgh

这是我的代码,但它出现在同一行

x = raw_input ('Enter 1st String: ')
y = raw_input ('Enter 2st String: ')
z = [x, y]
a = ''.join(z)
print (a)
有人知道这个错误吗?

您想要的是来自以下方面的循环配方:

注意

例如:

>>> "".join(roundrobin("abc", "defgh"))
adbecfgh
您想要的是来自以下公司的循环式配方:

注意

例如:

>>> "".join(roundrobin("abc", "defgh"))
adbecfgh
这里需要itertools.izip_最长,如果使用的是python 3.x,则需要itertools.zip_最长:

In [1]: from itertools import izip_longest

In [2]: strs1="abc"

In [3]: strs2="defgh"

In [4]: "".join("".join(x) for x in izip_longest(strs1,strs2,fillvalue=""))
Out[4]: 'adbecfgh'
这里需要itertools.izip_最长,如果使用的是python 3.x,则需要itertools.zip_最长:

In [1]: from itertools import izip_longest

In [2]: strs1="abc"

In [3]: strs2="defgh"

In [4]: "".join("".join(x) for x in izip_longest(strs1,strs2,fillvalue=""))
Out[4]: 'adbecfgh'

这并没有将字符串放在所需的位置order@JakobBowyer事实上,误读了问题,更新了。记住从ITERTOLST导入islice,它不会将字符串放入所需的order@JakobBowyer事实上,误读了问题,更新了。记住从Itertools导入islice作为注释,它在3.x中重命名为zip_最长,但是+1是一个简单的答案。是的,它的作用是:但是还有其他简单的方法可以做到这一点吗?我的意思是使用简单的变量,如计数器、长度和所有..?@NishaKothari看到了我的其他解决方案,但我想zip_longest足够简单,如果它对您有效,请接受这个答案。请注意,在3.x中,它被重命名为zip_longest,但对于一个简单的答案,+1。是的,它的工作原理是:但还有其他简单的方法吗?我的意思是使用简单的变量,如计数器、长度和所有..?@NishaKothari请看我的其他解决方案,但我想zip_longest足够简单,如果它对您有效,请接受这个答案。在问题的第一页上仍然有一个问题完全相同@SilentGhost:请注意,不仅问题是重复的,而且一些答案也是几乎完全相同的复制粘贴副本。我看不出这些“活动”有什么意义。在这篇文章的第一页上仍然有一个问题问得完全一样@SilentGhost:请注意,不仅问题是重复的,而且一些答案也是几乎完全相同的复制粘贴副本。我看不出这些“活动”有什么意义。