python的turtle库画图例子

本文通过Python的turtle库展示了如何画出蟒蛇、等边三角形、五角星、太阳花、螺旋线和彩色螺旋线等图形,是初学者学习turtle库的好资料。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.画蟒蛇

import turtle
# from turtle import *

def drawSnake(rad,angle,len,neckrad): # rad>0 -> 半径在小乌龟运行的左侧  rad<0 -> 半径在小乌龟运行的右侧
    # angle -> 小乌龟沿着圆形爬行的弧度制
    for i in range(len):
        turtle.circle(rad,angle) # circle()函数 -> 沿着一个圆形爬行
        turtle.circle(-rad,angle) 
    turtle.circle(rad,angle/2)
    turtle.fd(rad) # fd()==forward() -> 乌龟向前直线爬行移动rad的距离
    turtle.circle(neckrad+1,180)
    turtle.fd(rad*2/3)
        
def main():
    turtle.setup(1300,800,0,0) # setup(width,height,startx,starty)函数 -> 启动一个左上角的图形窗口 
    pythonsize=30
    turtle.pensize(pythonsize) # pensize()函数 -> 小乌龟运动轨迹的宽度
    turtle.pencolor("blue") # pencolor()函数 -> 小乌龟运动轨迹的颜色
    turtle.seth(-40)# seth()函数 -> 启动时运动的方向
    drawSnake(40,80,5,pythonsize/2)

main()

2.画等边三角形

from turtle import *

setup(1300,800,0,0)
fd(300)
seth(120) 
fd(300)
seth(-120) # 相对于水平直线的
### 使用 Python Turtle 绘制图形 #### 绘制正方形 下面展示的是利用 `turtle` 创建画布和海龟对象,并使用该对象绘制一个简单的正方形的代码示例[^1]。 ```python import turtle # 设置窗口标题 turtle.title('Square Drawing') # 创建乌龟实例 t = turtle.Turtle() # 开始绘制正方形 for _ in range(4): t.forward(100) # 向前移动100像素 t.right(90) # 右转90度 # 关闭方式:点击屏幕关闭程序 turtle.exitonclick() ``` #### 动态下雪场景模拟 此部分提供了一个更加复杂的例子——即制作动态降雪的效果。这不仅涉及到了基本绘图操作,还加入了时间延迟以及随机函数的应用,使得雪花能够以不同的速度飘落[^2]。 ```python import turtle import random import time screen = turtle.Screen() screen.bgcolor("black") def draw_snowflake(): flake = turtle.Turtle(shape="circle") flake.color("white") flake.penup() size = random.randint(2, 8) speed = random.uniform(0.5, 3) while True: flake.sety(flake.ycor() - speed) if flake.ycor() < -200: break screen.update() time.sleep(0.05) for i in range(50): x = random.randint(-300, 300) y = random.randint(200, 400) snowflake = turtle.Turtle(visible=False) snowflake.speed('fastest') snowflake.goto(x,y) draw_snowflake() turtle.done() ``` #### 基本几何图形与颜色填充 最后这部分代码进一步探讨了如何结合条件判断语句(`if`) 和循环结构 (`for`) 来完成多个基础几何图案的创作;同时也讲解了怎样改变画笔色彩并对封闭区域进行着色处理[^3]。 ```python from turtle import * colors = ['red', 'blue', 'green'] pen = Pen() pen.width(3) for index in range(3): pen.pencolor(colors[index]) for num in range(4): pen.forward(100) pen.left(90) pen.begin_fill() circle(50) pen.end_fill() pen.up() pen.forward(150) pen.down() done() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值