给定字符串s1和s2(不一定长度相同),创建一个由s1和s2的交替字符组成的新字符串(即,s1的第一个字符后跟s2的第一个字符,接着是s1的第二个字符,然后是s2的第二个字符,依此类推。一旦到达任一字符串的末尾,就不会添加任何其他字符。例如,如果s1包含“abc”,s2包含“uvwxyz”,则新字符串应包含“aubvcw”。将新字符串赋给变量s3。在
我试过这样做,但总是给我一个错误:
s3 = ""
for i in range(len(s1)):
s3 += s1[i] + s2[i]
join.min(s1,s2)
例如,s1是"abc"
,s2是"uvwxyz"
。
s3应该得到"aubvcw"
。在
我提出两种解决方案。一个使用
min()
函数,另一个不。。。在使用
min()
计算每个字符串的长度,并使用
^{pr2}$min()
来获取最短的长度。在通过在
range()
函数中使用short
,我们可以将迭代次数限制为最短字符串中的字符数。。。在不使用
min()
不使用}。在
min()
的一个可能的解决方案是利用zip()
函数和字符串方法{zip
函数对元素逐个来自每个输入,当到达最短输入的末尾时,默认情况下停止创建对)。在在本例中,
zip()
将生成一个对序列,如下所示: (‘a’、‘u’) (“b”、“v”) (“c”、“w”)下面的内部
''.join()
方法用一个空字符串组合每个对的每个元素。这将产生一系列有向图:'au'
,'bv'
,'cw'
。在然后,外部
''.join()
方法将每个有向图与一个空字符串组合在一起。在相关问题 更多 >
编程相关推荐