Python中文
首页
教程
问答
标签
搜索
登录
注册
TypeError:detectCollisions()只接受8个参数(给定9个参数)
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我一直得到这个类型的error TypeError:detectCollisions()正好接受8个参数(给定9个)</p> <pre><code>def detectCollisions(x1,y1,w1,h1,x2,y2,w2,h2,): if (x2+w2>=x1>=x2 and y2+h2>=y1>=y2): return True elif (x2+w2>=x1+w1>=x2 and y2+h2>=y1>=y2): return True elif (x2+w2>=x1>=x2 and y2+h2>=y1+h1>=y2): return True elif (x2+w2>=x1+w1>=x2 and y2+h2>=y1+h1>=y2): return True else: return False def update(self,gravity,blocklist): if(self.velocity<0): self.falling=True blockX,blockY=0,0 collision=False for block in blocklist: collision = self.detectCollisions(self.x, self.y, self.width, self.height, block.x, block.y, block.width, block.height) </code></pre> <p>我不确定它有什么问题,我已经添加了一个def来检测碰撞</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我确信您在方法声明中遗漏了<code>self</code></p> <pre><code>def detectCollisions(x, y, .... </code></pre> <p>第一个参数应该是<code>self</code>,然后是自定义参数。在</p> <p>当调用它时,<code>self</code>被隐式传递(因此,当您在调用中仅使用8个参数时,它将获得9个参数)</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在乒乓球比赛中预测球的轨迹,对于AI球拍预测?
9 回答
如何在乒乓球游戏中阻止球
1 回答
如何在乘法和模中不乘空间?
5 回答
如何在乘法和除以2个不同的数字之间进行交换?
6 回答
如何在也是数据一部分的单个字符上拆分大字符串
7 回答
如何在乾草堆中找到針,有更好的解決方案嗎?
4 回答
如何在事件wxWidgets中传递自定义数据
3 回答
如何在事件中使用lambda i=i?
9 回答
如何在事件中心只接收最近的数据
8 回答
如何在事件发生之前保持云函数运行?
6 回答
如何在事件发生后使页面重定向到同一页面
3 回答
如何在事件回调之间保持python生成器的状态
2 回答
如何在事件处理程序(pythonsocket、sphinx)中保留docstring
8 回答
如何在事件处理程序中更改wxRichTextCtrl的光标位置?
9 回答
如何在事件处理程序中访问外部对象?
6 回答
如何在事件循环中将协程打包为正常函数?
5 回答
如何在事件循环之外运行协同程序?
3 回答
如何在事件循环结束时为并发未来的所有线程调用类方法?
6 回答
如何在事件文件中只保留一份摘要?
5 回答
如何在事件模板中添加事件
3 回答