How can I sum an int with a list? TypeError: unsupported operand type(s) for +: 'int' and 'list'
How can I sum an int with a list? TypeError: unsupported operand type(s) for +: 'int' and 'list'
首先,我是python的新生,所以这可能很容易,但我在问这里之前已经尽力研究了。无论如何,如果我将 "for tall in minListe" 更改为“for minListe in [5, 2, -4, 2, -1, 0, 2, -2, 3, 0, 7]” 它可以工作,但这还不够好...任何人都知道如何做到这一点而不必在函数中包含我的列表?
total = 0
tall = 0
minListe = [5, 2, -4, 2, -1, 0, 2, -2, 3, 0, 7]
def funksjon2(total):
total = 0
for tall in minListe:
if minListe == 0:
break
total = total + minListe
return (total)
def main():
print(funksjon2(total))
if __name__ == "__main__":
main(
)
如果我没有正确理解您的逻辑,那么您正在尝试执行以下操作。尝试下面的代码,如果有效或无效,请在下方发表评论。我在修改的地方添加了一些评论
minListe = [5, 2, -4, 2, -1, 0, 2, -2, 3, 0, 7]
def funksjon2(minListe):
total = 0
for tall in minListe:
if tall == 0: # Replaced minListe by tall
break
total = total + tall # # Replaced minListe by tall
return (total)
print(funksjon2(minListe))
> 4 # Answer
您正在尝试将一个列表添加到一个 int,所以从直觉上这是行不通的。您的错误在行中:
if minListe == 0:
total = total + minListe
相反,这应该是
if tall == 0:
total = total + tall
# or 'total += tall'
因为 tall
是 minListe
中的一个整数,而 minListe
是列表本身。
解决方法是:
总计 = 0
对于 minListe 中的高:
如果 minListe == 0:
休息
总计 = 总计 + 高
return(总计)
你不应该添加带有 int 的列表。只需将 tall 迭代器添加到您的总数中即可。
首先,我是python的新生,所以这可能很容易,但我在问这里之前已经尽力研究了。无论如何,如果我将 "for tall in minListe" 更改为“for minListe in [5, 2, -4, 2, -1, 0, 2, -2, 3, 0, 7]” 它可以工作,但这还不够好...任何人都知道如何做到这一点而不必在函数中包含我的列表?
total = 0
tall = 0
minListe = [5, 2, -4, 2, -1, 0, 2, -2, 3, 0, 7]
def funksjon2(total):
total = 0
for tall in minListe:
if minListe == 0:
break
total = total + minListe
return (total)
def main():
print(funksjon2(total))
if __name__ == "__main__":
main(
)
如果我没有正确理解您的逻辑,那么您正在尝试执行以下操作。尝试下面的代码,如果有效或无效,请在下方发表评论。我在修改的地方添加了一些评论
minListe = [5, 2, -4, 2, -1, 0, 2, -2, 3, 0, 7]
def funksjon2(minListe):
total = 0
for tall in minListe:
if tall == 0: # Replaced minListe by tall
break
total = total + tall # # Replaced minListe by tall
return (total)
print(funksjon2(minListe))
> 4 # Answer
您正在尝试将一个列表添加到一个 int,所以从直觉上这是行不通的。您的错误在行中:
if minListe == 0:
total = total + minListe
相反,这应该是
if tall == 0:
total = total + tall
# or 'total += tall'
因为 tall
是 minListe
中的一个整数,而 minListe
是列表本身。
解决方法是: 总计 = 0 对于 minListe 中的高: 如果 minListe == 0: 休息 总计 = 总计 + 高 return(总计)
你不应该添加带有 int 的列表。只需将 tall 迭代器添加到您的总数中即可。