首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python3函数正确性

python3函数正确性
EN

Stack Overflow用户
提问于 2012-12-11 08:46:16
回答 3查看 76关注 0票数 1

我有一个下面的函数:

代码语言:javascript
复制
def f(s1,s2):
         s=''
         for i in range(min(len(s1),len(s2))):
            s = s1[i] + s2[i]
         if len(s1) < len(s2): return s + s2[len(s1):]   
         else: return s + s1[len(s2):]
print(f('1234','abc'))

此函数应将两个字符串一起打印为1a2b3c4,但当我运行它时,我只得到最后一半的3c4。你知道为什么会发生这样的事情吗?谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-12-11 08:53:25

看起来你正在重新赋值变量“%s”,而你应该连接在一起。

替换:s= s1i + s2i

使用:s=s+ s1i + s2i

票数 1
EN

Stack Overflow用户

发布于 2012-12-11 08:48:32

因为你做得太难了。

代码语言:javascript
复制
s = ''.join((x + y) for (x, y) in zip(s1, s2))
票数 4
EN

Stack Overflow用户

发布于 2012-12-11 08:52:31

您指的是for循环中的s +=,对吗?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13811847

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档