用Python来画满屏不重复的圆

       这个主要是通过turtle库去实现的一个画不重复圆的的功能,欢迎大家来了解,如果对你的学习有帮助的话,请留下一个赞和收藏给笔者鼓励一下哈

import turtle
import random

# 设置画布尺寸为1600*800
turtle.setup(100, 100)

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

# 设置画笔速度和形状
t.speed(0)
t.shape("circle")

# 定义函数来生成随机圆形
def draw_circle():
    # 生成随机半径和颜色
    radius = random.randint(min(15, 40), max(15, 40))
    color = random.choice(["red", "blue", "green", "yellow", "orange", "purple"])

    # 在随机位置绘制圆形
    x = random.randint(-740, 740)
    y = random.randint(-340, 340)
    t.penup()
    t.goto(x, y)
    t.pendown()
    t.fillcolor(color)
    t.begin_fill()
    t.circle(radius)
    t.end_fill()

# 统计最多可以填充多少个不重叠的圆形
count = 0
while True:
    # 检查圆形是否重叠
    overlapping = False
    # 绘制圆形
    draw_circle()
    count += 1
    for c in t.getscreen().turtles():
        if c != t and c.distance(t) < 2 * max(15, 40):
            overlapping = True
            break

    # 如果圆形重叠,则停止绘制
    if overlapping:
        break



# 输出最多可以填充的圆形数量
print("最多可以填充的圆形数量:", count - 1)

# 点击关闭窗口退出程序
turtle.done()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

起飞001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值