VPython 6对象无法

2024-06-06 18:04:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个三维弹性碰撞模拟。我想从我的程序中清除所有的球体对象。文档表明我应该执行以下操作:

def clear_balls():
   for ball in balls:
      ball.visible = False
      del ball

这成功地使球在场景中不可见,但它们仍然占用内存并与仍然存在的球碰撞。我要把它完全去掉。尝试使用一个唯一的球名,这不是一个列表的一部分,因为有些人认为仍然会导致相同的问题。你知道吗


Tags: 对象in文档程序falsefordef弹性
1条回答
网友
1楼 · 发布于 2024-06-06 18:04:26

del ball没有做您认为应该做的事情,因为balls仍然持有对对象的引用。您需要清空balls列表:

def clear_balls():
    for ball in balls:
        ball.visible = False
     balls[:] = []

相关问题 更多 >