python - Turtle clear() 不适用于 Turtle 对象列表
问题描述
我正在编写一个简单的 Python 蛇游戏。当蛇吃食物时,它会变长。我的代码将新的段作为 Turtle 对象添加到我的段列表中。当蛇碰到屏幕边框时,我的代码应该清除屏幕上的片段并重置位置/文本。
我在清除屏幕上的片段时遇到问题。我认为这样的事情会起作用:
for segment in segments:
segment.clear()
segments = []
但是,该片段仍在屏幕上!但是,当我使用此代码时,它以某种方式起作用:
for segment in segments:
segment.goto(10000, 10000)
segments = []
我认为 clear() 会起作用。这里有什么问题?顺便说一句,我正在关注本教程。
解决方案
你可以试试:
for segment in segments:
segments.remove(segment)
这将清除段列表。
推荐阅读
- symfony - 在 Symfony 子表单集合的回调验证器中,如何获取不同字段的值?
- javascript - 将第三方模块用于具有多个模块的 Angular 应用程序的正确方法
- monitoring - 如何从一段时间内获取 Couchbase 节点统计信息的样本
- tampermonkey - 如何获取网页中包含的文本并将其作为页面标题的一部分?
- apache-spark - 在配置单元表中交换分区时出错
- javascript - 使用 SELECT 附近的 sql sintaxis 出错,代码:'ER_PARSE_ERROR',errno:1064
- syntax - 在 OCaml 中,如何区分 * 和 ,?
- python-3.x - 如何解决错误“ValueError:时间数据'2019-07-01 07:00:00'与格式'%y-%m-%d %H:%M:%S'不匹配”
- java - 什么是hashmap入口类中的hashcode和equals
- javascript - 浏览器游戏保护