乌龟和海龟有什么区别?

问题描述 投票:0回答:7

Python 2.7 版本中的 turtleTurtle 有什么不同?

import turtle
star = turtle.Turtle()
for i in range(50):
    star.forward(50)
    star.right(144)
turtle.done()
python python-2.7 turtle-graphics python-turtle
7个回答
7
投票

海龟模块很不寻常。为了让新手程序员更容易上手,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()类构造方法。


1
投票

希望您玩得开心! “turtle”实际上是我们使用的模块。 乌龟或者我们可以说是乌龟。乌龟实际上是一个物体,你可以移动它改变速度、颜色、形状......

在这里你可以看到一个例子:

enemy = turtle.Turtle(shape="rabbit.gif")
enemy.penup()
enemy.speed(0)
enemy.setposition(400, -180)

或另一个:

player = turtle.Turtle(shape="turtle.gif")
player.penup()
player.speed(0)
player.left(90)
player.setposition(-400, -200)

或:

border = turtle.Turtle()
border.speed(0)
border.color("white")
border.penup()
border.setposition(-300, -300)
border.pendown()
border.pensize(3)
border.hideturtle()

希望有帮助!


1
投票

turtle
是您导入的模块,而
Turtle
是类的名称。使用
from turtle import *
就不再需要
turtle.Turtle


0
投票

turtle
是包的名称,而
Turtle
是类的名称。

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

import turtle.Turtle

另外,你确定最后一行是

turtle.done()
而不是
star.done()
吗?


0
投票

turtle 是模块的名称,Turtle 是类/函数的名称,所以当你运行时

from turtle import Turtle

您正在阅读turtle模块,其中包含所有不同类的列表,但您只是导入Turtle类。


-1
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.