如何解决解决 Python 中 sqrt 函数中的 TypeError 错误
所以我有这个代码,当我尝试使用数学库的 sqrt 函数计算距离公式时收到错误。
有人能帮我解决这个 TypeError 吗?
import math
def isCollision(basketX,basketY,appleX,appleY):
distance = math.sqrt((math.pow(basketX - appleX,2)) + (math.pow(basketY - appleY,2)))
if distance < 27:
return True
else:
return False
collision = isCollision(basketX[i],basketY[i],appleY)
if collision:
score_value += 1
appleX[i] = random.randint(0,735)
appleY[i] = random.randint(0,150)
这是我收到的错误(注意:这是更大代码的一小部分,这就是为什么它说第 101 行):
Traceback (most recent call last):
File "C:/Users/shaha/PycharmProjects/ApplePicker/main.py",line 101,in <module>
collision = isCollision(basketX[i],appleY)
TypeError: 'int' object is not subscriptable
解决方法
basketX
和 basketY
似乎属于 int
类型而不是 list
,因此您无法通过 basketX[i]
或 basketY[i]
访问任何信息.
尝试将 basketX
和 basketY
直接传递给函数。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。