+:'dict'和'int'不支持的操作数类型

时间:2014-11-24 16:10:52

标签: python typeerror

有点奇怪!

有人能对这条TypeError消息有所了解吗?

csvRow.append(len(calls["outbound"] + len(calls["inbound"])))
TypeError: unsupported operand type(s) for +: 'dict' and 'int'

当我执行以下操作时,我没有遇到任何问题,并按预期运行:

totalinbound = len(calls["inbound"])
totaloutbound = len(calls["outbound"])
csvRow.append(totalinbound + totaloutbound)

2 个答案:

答案 0 :(得分:7)

您的括号未正确平衡。 calls["outbound"]应位于调用len函数的括号内:

csvRow.append(len(calls["outbound"]) + len(calls["inbound"]))
#                                  ^

我将一个封闭的parethesis从线的末端移动到箭头所在的位置。

否则,您将尝试使用len(calls["inbound"])返回的dict添加calls["outbound"]。这是TypeError

答案 1 :(得分:2)

你有一个错字。

# calculates the len of (dict + len of dict)
len(calls["outbound"] + len(calls["inbound"]))

# calculates the len of dict + len of dict
len(calls["outbound"]) + len(calls["inbound"])