我在编写代码时遇到一些实践问题,因此turtle可以绘制正方形,圆形,多边形等。问题是,当我尝试运行代码时,turtle要么是:
我在Spyder上使用Python 3.6,并在每节末尾尝试使用turtle.mainloop()
和turtle.done()
,但我一直遇到相同的问题。
这是我的代码:
import turtle
bob = turtle.Turtle()
print(bob)
bob.fd(100)
bob.lt(90)
bob.fd(100)
bob.lt(90)
bob.fd(100)
bob.lt(90)
bob.fd(100)
turtle.done()
for i in range(4):
print("Hello!")
for i in range(4):
bob.fd(100)
bob.lt(90)
turtle.done()
t = turtle.Turtle()
def square(t):
print(t)
t.fd(100)
t.lt(90)
t.fd(100)
t.lt(90)
t.fd(100)
t.lt(90)
t.fd(100)
t.lt(90)
turtle.done()
square(bob)
turtle.done()
t = turtle.Turtle()
def square(t):
print(t)
for i in range(4):
t.fd(100)
t.lt(90)
turtle.mainloop()
turtle.done()
t = turtle.Turtle()
def square(t, length):
print(t)
for i in range(4):
t.fd(length)
t.lt(90)
square(t, 200)
turtle.done()
t = turtle.Turtle()
def polygon(t, length, n):
print(t)
for i in range(4):
t.fd(length)
t.lt(360/n)
polygon(t, t = 200, n = 12)
turtle.done()
import math
def circle(t, r):
circumference = 2 * math.pi * r
n = 100
length = circumference / n
polygon(t, length, n)
circle(t, 100)
turtle.done()
"""draws a circle in turtle"""
答案 0 :(得分:0)
您是在告诉计算机如何做事,但实际上并没有告诉它要做。运行 circle(t)
等。
您并没有始终运行所需的所有内容。仔细通读代码,并确保始终运行mainloop
等。
答案 1 :(得分:0)
多个turtle.done()
语句(当只应有一个语句时),并且各个代码段没有考虑其他代码段的绘制位置,这一事实使它看起来应该像单个文件中的单个程序的集合:
程序1:
import turtle
bob = turtle.Turtle()
print(bob)
bob.fd(100)
bob.lt(90)
bob.fd(100)
bob.lt(90)
bob.fd(100)
bob.lt(90)
bob.fd(100)
for i in range(4):
print("Hello!")
turtle.done()
程序2:
import turtle
bob = turtle.Turtle()
for i in range(4):
bob.fd(100)
bob.lt(90)
turtle.done()
程序3:
import turtle
def square(t):
print(t)
t.fd(100)
t.lt(90)
t.fd(100)
t.lt(90)
t.fd(100)
t.lt(90)
t.fd(100)
t.lt(90)
bob = turtle.Turtle()
square(bob)
turtle.done()
程序4:
import turtle
def square(t):
print(t)
for i in range(4):
t.fd(100)
t.lt(90)
t = turtle.Turtle()
square(t)
turtle.mainloop()
程序5:
import turtle
def square(t, length):
print(t)
for i in range(4):
t.fd(length)
t.lt(90)
t = turtle.Turtle()
square(t, 200)
turtle.done()
程序6:
import turtle
import math
def polygon(t, length, n):
print(t)
for i in range(n):
t.fd(length)
t.lt(360 / n)
t = turtle.Turtle()
polygon(t, length=50, n=12)
def circle(t, r):
"""draws a circle in turtle"""
circumference = 2 * math.pi * r
n = 100
length = circumference / n
polygon(t, length, n)
circle(t, 100)
turtle.done()
尝试将它们作为单独的程序运行在单独的文件中,并查看turtle是否对您更好。