空中扑救卡塔Python

2024-09-29 20:22:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经为codewars问题构建了一个代码。我认为这是正确的,但它显示了一个我不理解的错误

你能告诉我我做错了什么吗

import math


def waterbombs(fire, w):
    s=""  
    countx=0
    for i in fire:
        if i=="x":
            countx+=1

        elif i=="Y":
            countx=0
    return sum(math.ceil(countx/w))


waterbombs("xxYxx", 3)

这就是错误:

Traceback (most recent call last):
File "D:\Curso Python Pildorasinformaticas\Ejercicios Codewars\Aerial Firefighting.py", line 16, in <module>
waterbombs("xxYxx", 3)
  File "D:\Curso Python Pildorasinformaticas\Ejercicios Codewars\Aerial Firefighting.py", line 13, in waterbombs
return sum(math.ceil(countx/w))
TypeError: 'int' object is not iterable

[在0.2秒内完成]


Tags: inreturn错误mathfirecodewarsfilesum
1条回答
网友
1楼 · 发布于 2024-09-29 20:22:12

你为什么要做sum(math.ceil(countx/w))? 这里sum方法的目标是什么,因为只有math.ceil返回值

如果向总和传递一个值,它将抛出该错误。您应该传递sum方法的值列表

例如:sum(5)会给你上面看到的错误,但是sum([5])会给你返回5

相关问题 更多 >

    热门问题