【问题标题】:Difference between turtle and Turtle?乌龟和乌龟的区别?
【发布时间】:2017-08-09 23:52:21
【问题描述】:

turtleTurtle 在 python 2.7 版中有何不同?

import turtle
star = turtle.Turtle()
for i in range(50):
    star.forward(50)
    star.right(144)
turtle.done()

【问题讨论】:

  • turtle 是一个包含 Turtle 类的模块。如果您使用的是 Debian OS,请检查您的默认 python libs 文件夹。 .例如 /usr/libs/python (version)/turtle

标签: python python-2.7 turtle-graphics python-turtle


【解决方案1】:

turtle 模块异常。为了使初学者更容易,Turtle 类的所有方法也可用作对默认(未命名)turtle 实例进行操作的顶级函数。 Screen 类的所有方法也可用作在默认(唯一)屏幕实例上操作的顶级函数。所以这两个:

import turtle

star = turtle.Turtle()  # turtle instance creation

for i in range(5):
    star.forward(50)  # turtle instance method
    star.right(144)  # turtle instance method

screen = turtle.Screen()  # access sole screen instance
screen.mainloop()  # screen instance method

还有这个:

import turtle

for i in range(5):
    turtle.forward(50)  # function, default turtle
    turtle.right(144)

turtle.done()  # function, mainloop() synonym, acts on singular screen instance

都是有效的实现。许多海龟程序最终将功能接口与对象接口混合在一起。为避免这种情况,我强烈推荐以下导入语法:

from turtle import Turtle, Screen

这会强制对象方法使用turtle,使函数方法不可用:

from turtle import Turtle, Screen

star = Turtle()  # turtle instance creation

for i in range(5):
    star.forward(50)  # turtle instance method
    star.right(144)  # turtle instance method

screen = Screen()  # access sole screen instance
screen.mainloop()  # screen instance method

【讨论】:

    【解决方案2】:

    turtle 是您导入的模块,而 Turtle 是该类的名称。使用 from turtle import * 消除了对 turtle.Turtle 的需要。

    【讨论】:

      【解决方案3】:

      简单地说,turtle就是用来实例化类的包或库和Turtle()类的构造方法。

      【讨论】:

        【解决方案4】:

        turtle 是包名,Turtle 是类名。

        导入模块的另一种方法是:

        import turtle.Turtle

        另外,你确定最后一行是turtle.done() 而不是star.done()

        【讨论】:

        • from turtle import Turtle,但您必须在当前模块中的任何位置将turtle.Turtle 替换为Turtle
        • star.done() 会出错,turtle.done() 是有效的。 done() 顶级函数是 mainloop() 顶级函数的同义词,不适用于海龟实例。作为顶级函数,mainloop() 调用单个屏幕实例的同名方法。
        • 我确信 turtle.done() 因为 done() 属于 _tg_utilities
        【解决方案5】:

        第一个海龟被称为turtle,并被它的名字或变量引用,turtle.Turtle 方法创建了一个新的海龟,并且(大部分时间),你将它设置为一个变量。

        【讨论】:

          【解决方案6】:

          turtle 是一个方法,它包含一个高贵的 Turtle 类

          【讨论】:

            猜你喜欢
            • 2023-03-28
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-07-26
            • 2021-09-26
            相关资源
            最近更新 更多