![](/img/trans.png)
[英]TypeError: unsupported operand type(s) for +: 'int' and 'tuple'
[英]TypeError: unsupported operand type(s) for /: 'tuple' and 'int'
我在处理这个错误不受支持的操作数类型错误时遇到了麻烦,我不确定在这种情况下我做错了什么。 任何帮助,将不胜感激!!
def closest_pair(list):
if (len(list) <= 3):
return min_distance(list)
else:
left, right = split_into_two(list)
left_min = closest_pair(left)
right_min = closest_pair(right)
if(left_min[2]>right_min[2]):
return right_min
else:
return left_min
def split_into_two(list):
med_val = statistics.median(list)
med_x = med_val[0]
left = []
right = []
for i in list:
if (i[0]<med_x):
left.append(i)
else:
right.append(i)
return left, right
并打印closest_pair 给出:
Traceback (most recent call last):
File, line 109, in <module>
print(closest_pair(text_file))
File, line 61, in closest_pair
left_min = closest_pair(left)
File, line 62, in closest_pair
right_min = closest_pair(right)
File, line 60, in closest_pair
left, right = split_into_two(list)
File, line 44, in split_into_two
med_val = statistics.median(list)
File, line 358, in median
return (data[i - 1] + data[i])/2
TypeError: unsupported operand type(s) for /: 'tuple' and 'int'
错误信息非常明确:
return (data[i - 1] + data[i])/2
TypeError: unsupported operand type(s) for /: 'tuple' and 'int'
它表示该程序正试图将元组除以一个整数。 因此, data[i - 1] + data[i]
是一个元组,这意味着data[i - 1]
和data[i]
都是元组,而不是您可能期望的数字。
请注意,该错误发生在statistics.median
函数内部。 检查您是否将正确类型的参数传递给此函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.