Python中文
首页
教程
问答
标签
搜索
登录
注册
在我用方法移动一个对象之后,有没有办法更新它原来的x和y位置?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在创建一个对象块,我在其他参数中分配了一个X和Y位置,我希望能够通过方法<code>move()</code>按<code>x</code>和<code>y</code>单位移动它,并更新原始的<code>x</code>和<code>y</code>位置,以便在移动对象之前调用say <code>xyRange()</code>时,我得到原始的<code>x</code>,<code>y</code>位置,当我在<code>move()</code>之后这样做时,我得到了更新的<code>x</code>,<code>y</code>位置。你知道吗</p> <p>下面是我尝试过的,但我认为我遗漏了一些关键的方面,因为我得到了一个错误,我的对象“Block”没有这样的属性。你知道吗</p> <pre><code> def X(self): x = self.xPosition return x def Y(self): y = self.yPosition return y def xyRange(self): xRange = self.X() + self.toBlock.absX() yRange = self.Y() + self.toBlock.absY() return xRange, yRange def move(self, moveX=None, moveY=None): absX = self.absX() absY = self.absY() self.moveX = moveX if(self.moveX == None): moveX = 0 self.moveY = moveY if(self.moveY == None): moveY = 0 absoluteX = absX + moveX absoluteY = absY + moveY return absoluteX, absoluteY def absX(self): absoluteX = self.X() + self.toBlockId.absX() return absoluteX def absY(self): absoluteY = self.Y() + self.toBlockId.absY() return absoluteY </code></pre> <p>所以我有函数<code>X()</code>和<code>Y()</code>从构造函数中获取参数,并且能够在其他函数中操作它们,还有<code>absX()</code>和<code>absY()</code>来跟踪对象在网格中的实际位置,还有<code>xyRange()</code>函数,它基本上做相同的事情,但是只返回<code>x</code>的元组,<code>y</code>参数(假设为方便起见)。但我似乎不知道如何更新我原来的X和Y位置。你知道吗</p> <p>假设我从返回<code>(2, 2)</code>的<code>block1.xyRange()</code>开始 然后我<code>block1.move(2, 2)</code>,当我再次运行<code>block1.xyRange()</code>时,您会期望它返回<code>(4, 4)</code>。但是如果我尝试将move函数中的<code>self.moveX</code>和<code>self.moveY</code>参数添加到<code>X()</code>和<code>Y()</code>函数中,我会得到一个错误,即对象“Block”没有属性“moveX”或“moveY”。我想这是因为它在召唤自己。但我不知道怎么修。你知道吗</p> <p>如有任何建议,将不胜感激。你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>在move方法中,您忘记为对象字段设置更新的(absoluteX和absoluteY)值(自我定位以及自我定位). 这就是为什么你永远得不到更新的值。你知道吗</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在乒乓球比赛中预测球的轨迹,对于AI球拍预测?
6 回答
如何在乒乓球游戏中阻止球
8 回答
如何在乘法和模中不乘空间?
5 回答
如何在乘法和除以2个不同的数字之间进行交换?
2 回答
如何在也是数据一部分的单个字符上拆分大字符串
10 回答
如何在乾草堆中找到針,有更好的解決方案嗎?
3 回答
如何在事件wxWidgets中传递自定义数据
8 回答
如何在事件中使用lambda i=i?
4 回答
如何在事件中心只接收最近的数据
7 回答
如何在事件发生之前保持云函数运行?
10 回答
如何在事件发生后使页面重定向到同一页面
2 回答
如何在事件回调之间保持python生成器的状态
4 回答
如何在事件处理程序(pythonsocket、sphinx)中保留docstring
5 回答
如何在事件处理程序中更改wxRichTextCtrl的光标位置?
3 回答
如何在事件处理程序中访问外部对象?
8 回答
如何在事件循环中将协程打包为正常函数?
9 回答
如何在事件循环之外运行协同程序?
8 回答
如何在事件循环结束时为并发未来的所有线程调用类方法?
5 回答
如何在事件文件中只保留一份摘要?
4 回答
如何在事件模板中添加事件
8 回答