python画正方形、平行四边形、六边形、五角星、风车(四个半圆)

画正方形、平行四边形、六边形、五角星、风车(四个半圆)

python 复制代码
import turtle
def square(side_length):
    """正方形"""
    for _ in range(4):
        turtle.forward(side_length)
        turtle.right(90)

def parallelogram(base, height):
    """平行四边形"""
    for _ in range(2):
        turtle.forward(base)
        turtle.left(60)
        turtle.forward(height)
        turtle.left(120)

def hexagon(side_length):
    """六边形"""
    for _ in range(6):
        turtle.forward(side_length)
        turtle.right(60)

def star(size):
    """五角星"""
    for _ in range(5):
        turtle.forward(size)
        turtle.right(144)

def half_circle(radius):
    """半圆"""
    turtle.circle(radius, 180)

def windmill(radius):
    """风车"""
    for _ in range(4):
        half_circle(radius)  # 绘制半圆
        turtle.left(90)  # 旋转90度,位置调整到下一个半圆的起点


def main():
    turtle.speed(2)  # 设置速度
    turtle.pensize(2)  # 设置画笔粗细
    turtle.pencolor("pink")

    # 正方形
    turtle.penup()
    turtle.goto(-200, 200)  # 设置位置
    turtle.pendown()
    square(100)

    # 平行四边形
    turtle.penup()
    turtle.goto(-50, 200)  # 设置位置
    turtle.pendown()
    parallelogram(100, 50)

    # 六边形
    turtle.penup()
    turtle.goto(150, 200)  # 设置位置
    turtle.pendown()
    hexagon(100)

    # 五角星
    turtle.penup()
    turtle.goto(0, 0)  # 设置位置
    turtle.pendown()
    star(100)

    # 风车位置
    turtle.penup()
    turtle.goto(200, -200)  # 风车中心位置
    turtle.pendown()

    # 风车
    windmill(50)  # 半圆半径

    turtle.done()

if __name__ == "__main__":
    main()
相关推荐
woniu_buhui_fei几秒前
ArrayList核心逻辑
java·开发语言
叶子野格3 分钟前
《C语言学习:编程例题》B
c语言·开发语言·c++·学习
隔壁大炮5 分钟前
MNE-Python 第8天学习笔记:时频分析(ERD/ERS)
python·eeg·mne·脑电数据处理
cen__y9 分钟前
Linux13(数据库)
linux·服务器·c语言·开发语言·数据库
小许同学记录成长12 分钟前
gr-analog 模拟信号模块完整源码分析
python·算法·信号处理
人还是要有梦想的18 分钟前
QT数据库乱码、QT qml import导入库报错、ui界面分层设计
开发语言·qt·ui
MediaTea21 分钟前
PyTorch:主要模块简介
人工智能·pytorch·python·深度学习·机器学习
技术小猪猪23 分钟前
PromptOps:用Python构建生产级提示词工程体系
人工智能·python·ai·自动化·prompt
吃好睡好便好23 分钟前
创建上三角矩阵和下三角矩阵
开发语言·学习·线性代数·matlab·矩阵
苕皮蓝牙土豆34 分钟前
【Qt工业上位机实战】从零打造高性能串口监控终端
开发语言·qt