【国庆×中秋 特辑】Python Turtle 高质量画图

目录

前言

一、团圆月饼

效果展示

代码

二、大红灯笼

效果展示

代码

三、窗中赏月

效果展示

代码

四、湖光秋月

效果展示

代码

结语


前言

中秋国庆双节同庆,今天我就用这篇文章祝贺大家中秋团圆,国庆快乐

这篇文章里,我用Python的海龟库给大家绘制4个作品。

一、团圆月饼

中秋节,月饼是必不可少的传统美食之一,象征团圆、吉祥

效果展示

代码

import turtle

# 初始化
turtle.title("中秋节")
t = turtle.Turtle()
t.speed(100)
turtle.hideturtle()
t.hideturtle()

# 月饼轮廓
t.color("#E6C846")
for i in range(20):
     t.right(198)
     t.begin_fill()
     t.forward(220)
     t.circle(40, 180)
     t.goto(0, 0)
     t.end_fill()
t.color("#FAA03C")
for i in range(20):
     t.right(198)
     t.begin_fill()
     t.forward(210)
     t.circle(40, 180)
     t.goto(0, 0)
     t.end_fill()

# 月饼花纹
# 圆圈
t.color("#E6C846")
t.pensize(8)
t.penup()
t.goto(0, -200)
t.pendown()
t.circle(200)
t.pensize(5)
t.penup()
t.goto(0, -190)
t.pendown()
t.circle(190)
#正方形
t.penup()
t.goto(100, 100)
t.pendown()
for i in range(4):
    t.right(90)
    t.forward(200)
t.penup()
t.goto(90, 90)
t.pendown()
for i in range(4):
    t.right(90)
    t.forward(20)
    t.penup()
    t.forward(140)
    t.pendown()
    t.forward(20)
# 文字

turtle.penup()
turtle.goto(-80,0)
turtle.pendown()
turtle.color("#F5E16F")
turtle.write("月花", font=("楷体", 60, "bold"))
turtle.penup()
turtle.goto(-80,-80)
turtle.pendown()
turtle.write("圆好", font=("楷体", 60, "bold"))


turtle.done()

二、大红灯笼

在很多节日里,灯笼都会挂在大街小巷,表示过节的喜庆与热闹

效果展示

代码

import turtle

# 初始化
turtle.title("灯笼")
t = turtle.Turtle()
t.hideturtle()
t.speed(15)

# 灯笼主体
t.color("yellow")
t.fillcolor("red")
t.pensize(10)
t.goto(150, -150)
t.begin_fill()
for i in range(2):
    t.circle(150, 180)
    t.forward(300)
t.goto(100, -150)
for i in range(2):
    t.circle(150, 180)
    t.forward(200)
t.goto(30, -150)
for i in range(2):
    t.circle(150, 180)
    t.forward(60)
t.goto(-45, -150)
for i in range(2):
    t.circle(150, 180)
    t.backward(90)
t.penup()
t.goto(0, 150)
t.right(90)
t.pendown()
t.forward(300)
t.end_fill()

# 灯笼提手
t.penup()
t.pensize(5)
t.goto(50, 155)
t.color("red")
t.fillcolor("red")
t.right(90)
t.begin_fill()
t.pendown()
for i in range(2):
    t.forward(100)
    t.right(90)
    t.forward(30)
    t.right(90)
t.end_fill()
t.color("black")
t.forward(100)
t.penup()
t.goto(50, 185)
t.color("yellow")
t.pendown()
t.forward(100)
t.goto(0, 185)
t.right(120)
t.color("red")
t.circle(60, 60)
t.left(120)
t.circle(60, 60)

# 灯笼流苏
t.penup()
t.right(120)
t.pensize(5)
t.goto(50, -185)
t.pendown()
t.fillcolor("red")
t.color("red")
t.begin_fill()
for i in range(2):
    t.forward(100)
    t.right(90)
    t.forward(30)
    t.right(90)
t.end_fill()
t.color("yellow")
t.forward(100)
t.penup()
t.goto(50, -155)
t.color("black")
t.pendown()
t.forward(100)
t.color("red")
t.left(90)
t.pensize(3)
for i in range(21):
    t.penup()
    t.goto(-50+i*5, -185)
    t.pendown()
    t.forward(150)

turtle.done()

三、窗中赏月

在家赏月,亦是欣赏美景,亦是与亲朋好友的思念的寄托

效果展示

代码

import turtle
import random

t = turtle.Turtle()
turtle.screensize(bg="#FFFF9B")
t.speed(20)
t.pensize(3)

# 窗户
t.penup()
t.color("black")
t.fillcolor("brown")
t.goto(-240, -160)
t.pendown()
t.begin_fill()
for i in range(2):
    t.forward(480)
    t.right(90)
    t.forward(50)
    t.right(90)
t.end_fill()
t.penup()
t.goto(160, 160)
t.right(90)
t.pensize(1)
t.color("black")
t.fillcolor("darkblue")
t.pendown()
t.begin_fill()
for i in range(4):
    t.forward(320)
    t.right(90)
t.end_fill()

# 星星
for i in range(20):
    t.penup()
    t.goto(random.randint(-150, 150), random.randint(-150, 150))
    t.dot(random.randint(1, 5), "yellow")

# 窗帘
t.penup()
t.goto(160, 160)
t.color("lightblue")
t.fillcolor("lightblue")
t.pendown()
t.begin_fill()
t.forward(320)
t.left(90)
t.circle(50, -90)
t.goto(160, 160)
t.end_fill()
t.penup()
t.goto(-160, 160)
t.pendown()
t.begin_fill()
t.forward(320)
t.left(90)
t.circle(50, 90)
t.goto(-160, 160)
t.end_fill()

# 月亮
t.penup()
t.goto(80, 0)
t.color("yellow")
t.fillcolor("yellow")
t.pendown()
t.begin_fill()
t.circle(80)
t.end_fill()


turtle.done()

四、湖光秋月

湖光秋月两相和,潭面无风镜未磨。

湖水和明月,从来都是一对柔和、清朗的代表。

效果展示

代码

import turtle
import random

t = turtle.Turtle()
turtle.setup(800, 600)
turtle.screensize(bg="darkblue")
t.hideturtle()
t.speed(20)

# 湖面
t.penup()
t.goto(-400, -150)
t.color("blue")
t.fillcolor("blue")
t.pendown()
t.begin_fill()
for i in range(2):
    t.forward(800)
    t.right(90)
    t.forward(150)
    t.right(90)
t.end_fill()

# 星星
t.color("yellow")
for i in range(50):
    t.penup()
    t.goto(random.randint(-350, 350), random.randint(-130, 290))
    t.pendown()
    t.dot(random.randint(1, 8), "yellow")

# 月亮
t.penup()
t.goto(-150, 50)
t.fillcolor("yellow")
t.pendown()
t.begin_fill()
t.circle(80)
t.end_fill()

turtle.done()
    

结语

好了,本次的代码分享结束了,

最后,祝大家双节快乐,拜拜!

Turtle库是一种在Python中用于创建图形的基础绘图工具,它模拟了一种海龟式的画笔,可以按照预设的命令前进、旋转和绘制线条。对于初学者来说,通过turtle模块可以轻松地创作出各种简单的几何形状、动画效果甚至是迷宫游戏等。 以下是开始使用turtle进行绘图的基本步骤: 1. **导入模块**:首先需要导入turtle模块,通常在程序开头添加`import turtle`。 2. **初始化海龟**:通过`turtle.Turtle()`创建一个海龟对象,如`t = turtle.Turtle()`。每个海龟有自己的位置、颜色和画笔大小。 3. **设置属性**:可以调整海龟的位置(`.goto(x, y)`),颜色(`.color(color)`)以及画笔尺寸(`.pensize(width)`)。 4. **移动和画画**:使用`.forward(distance)`向前移动指定距离,`.left(angle)`或`.right(angle)`改变画笔方向,然后调用`.pendown()`让海龟开始绘画,`.penup()`停止绘画。 5. **循环和条件控制**:利用for循环或while循环,以及if-else结构,可以让海龟绘制复杂的图案。 6. **保存和显示**:完成绘制后,使用`.getscreen().getcanvas().postscript(file="output.ps", colormode='color')`将图像保存为PostScript文件。最后记得运行`turtle.done()`暂停直到用户关闭窗口。 **示例**: ```python # 导入turtle模块 import turtle # 创建一个海龟对象 t = turtle.Turtle() # 设置初始位置和颜色 t.penup() t.goto(-100, 100) t.pendown() t.color("blue") # 绘制一个正方形 for _ in range(4): t.forward(200) t.right(90) # 关闭绘图窗口 turtle.done() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值