关于#python#的问题:s1 串的第一个字符与s2串的第一个字符连接在一起

输入两个字符串(可能是空串)s1 和 s2, 要将这两个字符串合并在一起。要求是:s1 串的第一个字符与s2串的第一个字符连接在一起,后续依次类推。若一个串的长度大于另一个串的长度,则保留长串的剩余字符,即连接到新串的末尾。例如,若 s1=“abcde”, s2=“fgh”,则新串为 s3= “afbgchde”。

s1='1234'
s2='abcdef'
i=0
s=''
while i<len(s1) or i<len(s2):
    if i<len(s1):
        s+=s1[i]
    if i<len(s2):
        s+=s2[i]
    i+=1
print(s)

想到1种方法。

s1="abcde"
s2="fgh"

sl = min(len(s1),len(s2))
s3 = "".join([s1[n]+s2[n] for n in range(sl)])+s1[sl:]+s2[sl:]
print(s3)

有把字符串转换成列表的函数吧 然后都取第一位相加

import more_itertools as mi
s1="abcde"
s2="fgh"
print(''.join(mi.roundrobin(s1, s2)))

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632