IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> python——用Turtle画画写名字 -> 正文阅读

[开发工具]python——用Turtle画画写名字

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

在这里插入图片描述
这个动图展示的就是我利用Turtle库画的一个名字画,下面附上代码:

import time
import turtle
from random import random

t = turtle
t.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 T
import random
import 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()

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

好了,本次分享就到这里,大家喜欢或者觉得有用的话别忘了点赞收藏关注呀,下次见,拜拜


有问题的可以评论区或私信问我哦

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-09-23 11:39:21  更:2021-09-23 11:40:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 2:52:48-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码