首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我在Codewar中得到了这个错误,但它在PyCharm中工作得很好?

我在Codewar中得到了这个错误,但它在PyCharm中工作得很好?
EN

Stack Overflow用户
提问于 2021-02-04 02:13:48
回答 1查看 55关注 0票数 2

这是我正在解决的问题!

拆分字符串

完成解决方案,使其将字符串拆分为两个字符对。如果字符串包含奇数个字符,则应将最后一对中缺少的第二个字符替换为下划线('_')。

代码语言:javascript
运行
AI代码解释
复制
def solution(s):
    answer = []
    a = 0
    if (len(s) % 2) != 0:
        a = s + "_"
    for i in range(len(a) // 2):
        answer.append(a[2 * i:2 * i + 2])
    return answer

Traceback (most recent call last):
  File "main.py", line 13, in <module>
    test.assert_equals(solution(inp), exp)
  File "/home/codewarrior/solution.py", line 6, in solution
    for i in range(len(a) // 2):
TypeError: object of type 'int' has no len()
EN

回答 1

Stack Overflow用户

发布于 2021-02-04 03:13:01

问题是您将a初始化为整数a=0

如果s为偶数,则不执行行a = s + "_"。所以在这种情况下,a仍然是一个整数。

这就是为什么(len(a) // 2)会给出一个错误。len不能处理整数,只能处理字符串。

要解决此问题,请初始化a=s

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

https://stackoverflow.com/questions/66038433

复制
相关文章

相似问题

领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档