千家信息网

python如何使用Turtle库画画写名字

发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,这篇文章主要介绍了python如何使用Turtle库画画写名字,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Turtle库是Pytho
千家信息网最后更新 2025年02月01日python如何使用Turtle库画画写名字

这篇文章主要介绍了python如何使用Turtle库画画写名字,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

    Turtle库是Python语言中一个很流行的绘制图像的函数库,利用这个库会生成一个画布,在画布中有我们看不见的一个默认以中心点为原点的坐标轴,在原点会有一个初始默认朝东的画笔(箭头),一般我们把这个箭头叫做海龟,箭头的朝向就是海龟头的朝向。

    这个动图展示的就是我利用Turtle库画的一个名字画,下面附上代码:

    import timeimport turtlefrom random import randomt = turtlet.speed(3)t.hideturtle()t.color('black')t.pensize(10)# 一t.penup()t.goto(-110, 60)t.pendown()t.forward(100)# |t.penup()t.goto(-60, 125)t.right(90)t.pendown()t.forward(266)# 丿t.penup()t.goto(-60, 45)t.right(45)t.pendown()t.forward(90)# 丶t.penup()t.goto(-60, 38)t.left(90)t.pendown()t.forward(40)# 小一t.penup()t.goto(20, 60)t.left(45)t.pendown()t.forward(90)# |t.penup()t.goto(65, 123)t.right(90)t.pendown()t.forward(123)# 大一t.penup()t.goto(0, -5)t.left(90)t.pendown()t.forward(130)# 小一t.penup()t.goto(20, -65)t.pendown()t.forward(90)# |t.penup()t.goto(65, -14)t.right(90)t.pendown()t.forward(120)# 大一t.penup()t.goto(0, -135)t.left(90)t.pendown()t.forward(130)# 画圆t.color('red')t.pensize(3)t.penup()t.goto(15, -200)t.pendown()t.circle(180)t.exitonclick()

    函数

    解释

    hideturtle

    隐藏画笔

    speed

    画笔速度,1-10,1最慢,10最快

    color

    后可传参(2个参数),不传为默认设置,第一个参数为画笔颜色,第二个参数为填充颜色

    pensize

    画笔粗细,越大越粗

    penup

    画笔拿起,之后画笔运动时不画下轨迹

    pendown

    默认是这个状态,画笔落下,之后画笔运动会画出轨迹

    forward(num)

    画笔运动,num为运动像素数,即长度

    right (a)

    画笔方向向右旋转a角度,顺时针旋转

    left(a)

    画笔方向向左旋转a角度,逆时针旋转

    goto(x,y)

    将画笔移动到坐标轴x,y位置,在pendowm下会画下轨迹

    goto(x,y)

    将画笔移动到坐标轴x,y位置,在pendowm下会画下轨迹

    circle(a)

    以当前点为圆心,画一个半径为a的圆

    exitonclick

    点击关闭,画笔运行完不再自动退出画布

    下面是在论坛看到的一个大佬的画樱花树的代码,生成的结果比上面的复杂很多,但在弄懂我上面代码的情况下很容易看懂,作为进阶给大家展示下:

    import turtle as Timport randomimport time# 画樱花的躯干(60,t)def Tree(branch, t):    time.sleep(0.0005)    if branch > 3:        if 8 <= branch <= 12:            if random.randint(0, 2) == 0:                t.color('snow')  # 白            else:                t.color('lightcoral')  # 淡珊瑚色            t.pensize(branch / 3)        elif branch < 8:            if random.randint(0, 1) == 0:                t.color('snow')            else:                t.color('lightcoral')  # 淡珊瑚色            t.pensize(branch / 2)        else:            t.color('sienna')  # 赭(zhě)色            t.pensize(branch / 10)  # 6        t.forward(branch)        a = 1.5 * random.random()        t.right(20 * a)        b = 1.5 * random.random()        Tree(branch - 10 * b, t)        t.left(40 * a)        Tree(branch - 10 * b, t)        t.right(20 * a)        t.up()        t.backward(branch)        t.down()# 掉落的花瓣def Petal(m, t):    for i in range(m):        a = 200 - 400 * random.random()        b = 10 - 20 * random.random()        t.up()        t.forward(b)        t.left(90)        t.forward(a)        t.down()        t.color('lightcoral')  # 淡珊瑚色        t.circle(1)        t.up()        t.backward(a)        t.right(90)        t.backward(b)# 绘图区域t = T.Turtle()# 画布大小w = T.Screen()t.hideturtle()  # 隐藏画笔t.getscreen().tracer(5, 0)w.screensize(bg='wheat')  # wheat小麦t.left(90)t.up()t.backward(150)t.down()t.color('sienna')# 画樱花的躯干Tree(60, t)# 掉落的花瓣Petal(200, t)w.exitonclick()

    这个代码除了用到我上面介绍的几个函数,还用到了screenbgcolor,分别是设置画布和背景色,backward就是反向的forward

    感谢你能够认真阅读完这篇文章,希望小编分享的"python如何使用Turtle库画画写名字"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

    0