第七次Python实验 turtle库的绘制

import turtle

# 设置画布
screen = turtle.Screen()
screen.title("第七次实验作业7.2")
screen.bgcolor("white")

# 创建Turtle对象
t = turtle.Turtle()
t.pensize(4)
t.speed(0)  # 设置绘制速度

# 定义多边形的边长、间距和圆的半径
side_length = 130
spacing = 20
radius = 50

# 计算总宽度
total_width = 6 * (side_length + spacing) + 2 * radius

# 移动Turtle到起始位置
t.penup()
t.goto(-total_width / 2 + side_length / 2 + 50, 0)

# 颜色列表
colors = ["red", "blue", "green", "pink", "black"]

# 绘制3到6边形和圆,并控制间距
for i, color in enumerate(colors):
    t.color(color)  # 设置当前图形的颜色
    t.pendown()
    if i == len(colors) - 1:  # 最后一个图形为圆形
        t.circle(27)
    else:
        for _ in range(i + 3):
            t.forward(180 / (i + 3))
            t.left(360 / (i + 3))
    t.penup()
    t.forward(side_length + spacing)

# 隐藏turtle并保持窗口打开
screen.mainloop()

运行结果:

import turtle

# 设置画布
screen = turtle.Screen()
screen.title("第七次实验作业7.2")
screen.bgcolor("white")

# 创建Turtle对象
t = turtle.Turtle()
t.pensize(4)
t.speed(0)  # 设置绘制速度

# 定义多边形的边长、间距和圆的半径
side_length = 130
spacing = 20
radius = 50

# 计算总宽度
total_width = 6 * (side_length + spacing) + 2 * radius

# 移动Turtle到起始位置
t.penup()
t.goto(-total_width/2 + side_length/2+50, 0)

# 颜色列表
colors = ["red", "blue", "green", "pink", "black"]

# 绘制3到6边形和圆,并控制间距
for i, color in enumerate(colors):
    t.color(color)  # 设置当前图形的颜色
    t.begin_fill()
    t.pendown()
    if i == len(colors) - 1:  # 最后一个图形为圆形
        t.circle(27)
    else:
        for _ in range(i + 3):
            t.forward(180/(i + 3))
            t.left(360 / (i + 3))
    t.end_fill()
    t.penup()
    t.forward(side_length + spacing)

# 隐藏turtle并保持窗口打开
screen.mainloop()

运行结果:

import turtle
import numpy as np

# 提示用户输入三个点的坐标
points = input("请输入三个点的坐标(格式:x1 y1 x2 y2 x3 y3):")

# 将输入的坐标转换为数组
point_coords = list(map(int, points.split()))

# 将坐标分成三个点
p1 = np.array([point_coords[0], point_coords[1]])
p2 = np.array([point_coords[2], point_coords[3]])
p3 = np.array([point_coords[4], point_coords[5]])

# 计算三角形的面积
area = 0.5 * abs((p2[0] - p1[0]) * (p3[1] - p1[1]) - (p3[0] - p1[0]) * (p2[1] - p1[1]))

# 初始化Turtle画布
screen = turtle.Screen()
screen.title("第七次实验作业7.3")
screen.setup(600, 400)

# 创建Turtle对象
t = turtle.Turtle()

# 绘制三角形
t.penup()
t.goto(p1[0], p1[1])
t.pendown()
t.goto(p2[0], p2[1])
t.goto(p3[0], p3[1])
t.goto(p1[0], p1[1])

# 在每个点上标出坐标
t.penup()
t.goto(p1[0], p1[1])
t.pendown()
t.write(f"P1 ({p1[0]}, {p1[1]})", align="left", font=("Arial", 10, "normal"))

t.penup()
t.goto(p2[0], p2[1])
t.pendown()
t.write(f"P2 ({p2[0]}, {p2[1]})", align="right", font=("Arial", 10, "normal"))

t.penup()
t.goto(p3[0], p3[1])
t.pendown()
t.write(f"P3 ({p3[0]}, {p3[1]})", align="right", font=("Arial", 10, "normal"))

# 在三角形下方显示面积
t.penup()
t.goto((p1[0] + p2[0] + p3[0]) / 3, min(p1[1], p2[1], p3[1]) - 20)
t.pendown()
t.write("面积是: {:.2f}".format(area), align="center", font=("Arial", 12, "normal"))

# 隐藏Turtle箭头并保持窗口显示
t.hideturtle()
screen.mainloop()

运行结果:

import turtle

# 设置画布
turtle.setup(width=200, height=200)
screen = turtle.Screen()
screen.bgcolor("white")
turtle.title("第七次实验作业7.4.1")
# 创建Turtle对象
t = turtle.Turtle()
t.speed(0)
t.color("blue")

# 绘制蓝色正方形螺线图(增加间隔)
for i in range(100):
    t.forward(i)
    t.right(90)

# 隐藏Turtle箭头并保持窗口显示
t.hideturtle()
screen.mainloop()

import turtle
import random
# 设置画布
screen = turtle.Screen()
screen.bgcolor("white")
turtle.title("第七次实验作业7.4.2")
# 创建Turtle对象
t = turtle.Turtle()
t.speed(0)

# 定义颜色列表(八种颜色)
colors = ['blue', 'yellow', 'green', 'green', 'blue', 'purple', 'pink', 'brown']


# 绘制彩色正方形螺线图
for i in range(300):
    t.pencolor(colors[random.randint(0,7)])  # 切换颜色
    t.forward(i)
    t.right(90)
    t.penup()
    t.pendown()

# 隐藏Turtle箭头并保持窗口显示
t.hideturtle()
screen.mainloop()

import turtle

# 设置画布
screen = turtle.Screen()
screen.bgcolor("white")
turtle.title("第七次实验作业7.5")
# 创建Turtle对象
t = turtle.Turtle()
t.speed(0)
t.penup()

# 设置起始位置
start_x = -200
start_y = 200

# 定义每个格子的大小
square_size = 50

# 绘制黑白相间的棋盘
for i in range(8):  # 8行
    for j in range(8):  # 8列
        if (i + j) % 2 == 0:
            t.goto(start_x + j * square_size, start_y - i * square_size)
            t.pendown()
            t.begin_fill()
            t.fillcolor("black")
            for _ in range(4):
                t.forward(square_size)
                t.right(90)
            t.end_fill()
            t.penup()

# 绘制黑色边框
t.goto(start_x, start_y)
t.pendown()
t.pensize(2)
t.color("black")
for _ in range(4):
    t.forward(8 * square_size)
    t.right(90)

# 隐藏Turtle箭头并保持窗口显示
t.hideturtle()
screen.mainloop()

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,以下是一个绘制悉尼歌剧院的 Python Turtle 程序: ```python import turtle # 设置画布大小和背景颜色 screen = turtle.Screen() screen.setup(800, 600) screen.bgcolor("#ffffff") # 设置画笔颜色和线条宽度 pen = turtle.Turtle() pen.color("#ff0000") pen.width(3) # 绘制一个半圆 pen.penup() pen.goto(-200, 0) pen.pendown() pen.circle(200, 180) # 绘制第二个半圆 pen.penup() pen.goto(200, 0) pen.pendown() pen.circle(200, 180) # 绘制中间部分 pen.penup() pen.goto(-200, 0) pen.pendown() pen.right(90) pen.forward(100) pen.left(90) pen.forward(400) pen.left(90) pen.forward(100) # 绘制顶部三形 pen.penup() pen.goto(-200, 200) pen.pendown() pen.begin_fill() pen.fillcolor("#ff0000") pen.goto(0, 300) pen.goto(200, 200) pen.goto(-200, 200) pen.end_fill() # 隐藏画笔 pen.hideturtle() # 显示画布 turtle.done() ``` 说明: 1. 首先导入 `turtle` 。 2. 设置画布大小为 800x600,并将背景颜色设置为白色。 3. 创建一个画笔对象,设置颜色为红色,线条宽度为 3。 4. 绘制一个半圆,起点坐标为 (-200, 0),半径为 200,绘制 180 度的弧形。 5. 绘制第二个半圆,起点坐标为 (200, 0),半径为 200,绘制 180 度的弧形。 6. 绘制中间部分,起点坐标为 (-200, 0),向右旋转 90 度,前进 100,向左旋转 90 度,前进 400,向左旋转 90 度,前进 100。 7. 绘制顶部三形,起点坐标为 (-200, 200),开始填充颜色,绘制到 (0, 300),再绘制到 (200, 200),最后返回起点,结束填充。 8. 隐藏画笔。 9. 显示画布。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值