我需要运行此代码:
pp = ["first", "second", "third"]
sum(d for d in pp)
我得到error
:
TypeError: unsupported operand type(s) for +: 'int' and 'str'
我想与懒惰评估有关。你能帮帮我吗?
谢谢你!答案 0 :(得分:1)
sum()
的 start
buildin函数为0
。它只需要数字并返回总数。不允许string
。所以,你超过error
。相反,您可以使用''.join()
函数加入列表。
喜欢:
pp = ["first", "second", "third"]
sum = ''.join(pp)
print(sum)
输出:
firstsecondthird
答案 1 :(得分:0)
从左到右汇总开始和迭代的项目并返回总数。
start
默认为0. iterable的项目通常是数字,起始值不允许是字符串。
默认情况下,start
为0
,它是一个整数。 sum(d for d in pp)
尝试将整数与字符串相加。