如何使用 Turtle 绘制星星
How to draw a star using Turtle
假设一个名为 draw_star 的函数有两个参数:大小和点数,如:
def draw_star(size,points):
如果我使用
调用该函数
draw_star(100, 9)
输出应该是这样的
我得到的参考是这样的:
import turtle as t
for x in range(18):
t.forward(100)
if x%2 == 0:
t.left(175)
else:
t.left(225)
现在如果我调用 draw_star(100,7)
,我希望它绘制相同的星星但有 7 个点
你的问题是什么?
如果你想将引用转换为函数,你可以这样做:
import turtle as t
def draw_star(size, points):
for x in range(points):
t.forward(size)
if x % 2 == 0:
t.left(175)
else:
t.left(225)
现在可以调用函数了:draw_star(100, 18)
您获得的参考有效并创建了一个 18 分星
import turtle as t
def draw_star(size, points):
tipcorner = 5
cavity = ( 360+points*tipcorner )/points #get corner between tips
for x in range(points*2):
t.forward(size)
if x % 2 == 0:
t.left(180-tipcorner)
else:
t.right(180-cavity)
假设一个名为 draw_star 的函数有两个参数:大小和点数,如:
def draw_star(size,points):
如果我使用
调用该函数draw_star(100, 9)
输出应该是这样的
我得到的参考是这样的:
import turtle as t
for x in range(18):
t.forward(100)
if x%2 == 0:
t.left(175)
else:
t.left(225)
现在如果我调用 draw_star(100,7)
,我希望它绘制相同的星星但有 7 个点
你的问题是什么?
如果你想将引用转换为函数,你可以这样做:
import turtle as t
def draw_star(size, points):
for x in range(points):
t.forward(size)
if x % 2 == 0:
t.left(175)
else:
t.left(225)
现在可以调用函数了:draw_star(100, 18)
您获得的参考有效并创建了一个 18 分星
import turtle as t
def draw_star(size, points):
tipcorner = 5
cavity = ( 360+points*tipcorner )/points #get corner between tips
for x in range(points*2):
t.forward(size)
if x % 2 == 0:
t.left(180-tipcorner)
else:
t.right(180-cavity)