Python 如何返回由两个字符串的交替字符组成的字符串?

Python 如何返回由两个字符串的交替字符组成的字符串?,python,string,Python,String,我试图通过交替输入两个字符串中的字母,使此返回字符串。例如,foldstring(“abc”、“def”)应返回“adbecf”。这就是我所拥有的,但它所做的只是检查两个字符串的长度是否相同。我真的不知道从哪里开始 def foldStrings(string1,string2): x=string1 y=string2 if len(x)==len(y): return "True" else:

我试图通过交替输入两个字符串中的字母,使此返回字符串。例如,foldstring(“abc”、“def”)应返回“adbecf”。这就是我所拥有的,但它所做的只是检查两个字符串的长度是否相同。我真的不知道从哪里开始

    def foldStrings(string1,string2):
        x=string1
        y=string2
        if len(x)==len(y):
          return "True"
        else:
          return "The two strings are not equal in length."

“真实”的说法需要改变。有人能帮我吗?

您可以使用
zip
将结果展平:

>>> ''.join([''.join(t) for t in zip('abc','def')])
'adbecf'
也适用于2个以上的字符串:

>>> ''.join([''.join(t) for t in zip('abc','def','xyz')])
'adxbeycfz'
您可以使用
zip()
as同时迭代两个列表,并使用
join()
list
转换为
str
as::

>>> a, b = "abc", "def"
>>> new_list = [i+j for i, j in zip(a, b)]
>>> ''.join(new_list)
'adbecf'
我个人最喜欢的(也是最快的,在检查统计数据时)是通过
列表切片来完成,如下所示:

>>> n = list("abc") + list("def")  # create list
>>> n[::2], n[1::2] = a, b  # slice list alternatively
>>> ''.join(n)
'adbecf'

哦,你也可以从一个好的
Python
教程开始。。。