【问题标题】:How to end the turtle loop in Python while executing from Anaconda?从 Anaconda 执行时如何在 Python 中结束海龟循环?
【发布时间】:2018-11-12 05:58:27
【问题描述】:

我有以下代码:循环没有结束,乌龟一直在转圈。

    import turtle
    from turtle import Turtle
    from random import randint
    window=turtle.Screen()
    t = turtle.Turtle()
    #circle
    t.reset()
    while True:
        t.forward(2)
        t.right(1)
    if abs(pos()) < 1:
        break

我正在从 Jupyter 笔记本执行此操作。如果我从命令提示符执行相同的代码效果很好。 请指教!!

谢谢

【问题讨论】:

  • @davedwards:我就是这么做的。我在其中有一个 If 循环,它会打破循环。请记住,从命令提示符执行相同的代码时效果很好。
  • 是的,我同意,因为我错了我删除了我的评论
  • 你有一个缩进错误:if 需要在 while 循环内,而不是在循环之后。

标签: python while-loop anaconda turtle-graphics


【解决方案1】:

代码在命令提示符下无法正常工作,尽管您说过(两次)。问题是pos() 调用——它抛出NameError: name 'pos' is not defined。如果您还在多个海龟导入中添加了from turtle import *,那么它会运行,但会不正确,因为您将移动您的海龟t,但要测试默认 em> 海龟的位置。以这种简化的形式,它应该可以工作:

import turtle

t = turtle.Turtle()

while True:
    t.forward(2)
    t.right(1)
    if abs(t.pos()) < 1:
        break

turtle.done()

【讨论】:

    猜你喜欢
    • 2019-04-30
    • 1970-01-01
    • 2018-04-16
    • 1970-01-01
    • 2021-02-25
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    相关资源
    最近更新 更多