Python中利用海龟绘图(Turtle方法)画个钟表盘

目录

前言

        一、海龟绘图(Turtle)是什么?

        二、Turtle 方法

        三、主要代码和效果图

        1.引入库

                  2.主要代码

                  3.全部代码

                        ​​​效果图

总结


前言

朋友发来个习题,挺有趣的,就简单的py一下。


一、海龟绘图(Turtle)是什么?

海龟绘图很适合用来引导孩子学习编程。 最初来自于 Wally Feurzeig, Seymour Papert 和 Cynthia Solomon 于 1967 年所创造的 Logo 编程语言。使用海龟绘图可以编写重复执行简单动作的程序画出精细复杂的形状。

二、Turtle 方法


海龟动作

移动和绘制forward() | fd() 前进backward() | bk() | back() 后退right() | rt() 右转left() | lt() 左转goto() | setpos() | setposition() 前往/定位setx() 设置x坐标sety() 设置y坐标setheading() | seth() 设置朝向home() 返回原点circle() 画圆dot() 画点stamp() 印章clearstamp() 清除印章clearstamps() 清除多个印章undo() 撤消speed() 速度获取海龟的状态position() | pos() 位置towards() 目标方向xcor() x坐标ycor() y坐标heading() 朝向distance() 距离设置与度量单位degrees() 角度radians() 弧度

画笔控制

绘图状态pendown() | pd() | down() 画笔落下penup() | pu() | up() 画笔抬起pensize() | width() 画笔粗细pen() 画笔isdown() 画笔是否落下颜色控制color() 颜色pencolor() 画笔颜色fillcolor() 填充颜色填充filling() 是否填充begin_fill() 开始填充end_fill() 结束填充更多绘图控制reset() 重置clear() 清空write() 书写

海龟状态

可见性showturtle() | st() 显示海龟hideturtle() | ht() 隐藏海龟isvisible() 是否可见外观shape() 形状resizemode() 大小调整模式shapesize() | turtlesize() 形状大小shearfactor() 剪切因子settiltangle() 设置倾角tiltangle() 倾角tilt() 倾斜shapetransform() 变形get_shapepoly() 获取形状多边形

三、主要代码和效果图

1.引入库

使用之前先引入相对应的支持库

import time
import turtle

2.主要代码

# 绘制时钟,同时在时钟上方输出文字
t = turtle.Pen()
t.shape('turtle')
t.pensize(8)
t.pendown()
t.speed(10)
t.setpos(-55,-40)
t.color('black')
t.ht()
t.penup()
t.home()
t.pendown()
t.speed(10)
t.setpos(0,120)
t.penup()
t.home()
t.ht()
t.pendown()
t.pensize(5)
# 绘制时钟刻度
for i in range(1, 13):
    t = turtle.Pen()
    t.color('green')
    t.penup()
    t.seth(-30 * i + 90)
    t.forward(160)
    t.pendown()
    t.forward(30)
    t.penup()
    t.forward(25)
    t.write(str(i), align="left", font=10)
    t.home()
    t.ht()
# 绘制时钟外框
t.home()
t.color('red')
t.setpos(0,-260)
t.pendown()
t.pensize(10)
t.circle(260)
t.ht()
# 写上名字
t.pensize(5)
t.penup()
t.setpos(0, 130)
t.pendown()
t.color('black')
t.write('中国时刻', align="center", font=('新细明体', 18))
t.ht()
time.sleep(5)

3.全部代码

import time
import turtle
# 绘制时钟,同时在时钟上方输出文字
t = turtle.Pen()
t.shape('turtle')
t.pensize(8)
t.pendown()
t.speed(10)
t.setpos(-55,-40)
t.color('black')
t.ht()
t.penup()
t.home()
t.pendown()
t.speed(10)
t.setpos(0,120)
t.penup()
t.home()
t.ht()
t.pendown()
t.pensize(5)
# 绘制时钟刻度
for i in range(1, 13):
    t = turtle.Pen()
    t.color('green')
    t.penup()
    t.seth(-30 * i + 90)
    t.forward(160)
    t.pendown()
    t.forward(30)
    t.penup()
    t.forward(25)
    t.write(str(i), align="left", font=10)
    t.home()
    t.ht()
# 绘制时钟外框
t.home()
t.color('red')
t.setpos(0,-260)
t.pendown()
t.pensize(10)
t.circle(260)
t.ht()
# 写上名字
t.pensize(5)
t.penup()
t.setpos(0, 130)
t.pendown()
t.color('black')
t.write('中国时刻', align="center", font=('新细明体', 18))
t.ht()
time.sleep(5)

效果图


 

总结

根源题目不能说很像,应该是一模一样,哈哈哈哈。

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 你可以使用 Pythonturtle 库来绘制一个正八边形,代码大致如下:import turtle myTurtle = turtle.Turtle() for i in range(8): myTurtle.forward(100) myTurtle.right(45)turtle.done() ### 回答2: 要用Python绘制一个正八边形,我们可以使用turtle模块海龟图形库。下面是代码实现: ```python import turtle # 初始化布和海龟 window = turtle.Screen() turtle = turtle.Turtle() # 设置海龟绘图速度 turtle.speed(1) # 绘制正八边形的边长 side_length = 100 # 绘制正八边形 for _ in range(8): turtle.forward(side_length) turtle.right(45) # 结束绘制,关闭turtle.end_fill() turtle.done() ``` 在上面的代码,我们首先导入了turtle模块,然后创建了一个布和一个海龟对象。然后,我们设置了海龟绘图速度,并定义了正八边形的边长为100。接下来,使用循环绘制了正八边形的每一条边,每次绘制后右转45度。最后,我们结束绘制并关闭布。 运行以上代码,就能在窗口看到一个绘制好的正八边形。 ### 回答3: 要使用海龟绘图库来一个正八边形,首先需要导入turtle库。然后,我们可以设置一个布,并创建一个海龟对象,让它移动并出八条边。为了确保出的正八边形,我们需要计算出每条边的长度和每个内角的度数。 下面是一个使用Python海龟绘图turtle一个正八边形的代码示例: ```python import turtle # 创建一个布 canvas = turtle.Screen() # 创建一个海龟对象 pen = turtle.Turtle() # 定义正八边形的边长 length = 100 # 计算每个内角度数 angle = 360 / 8 # 使用循环出八条边 for _ in range(8): pen.forward(length) pen.right(angle) # 结束绘图 turtle.done() ``` 在这个代码,我们首先导入了`turtle`库。然后,创建了一个布对象`canvas`和一个海龟对象`pen`。接着,我们定义了正八边形的边长为`100`,并计算了每个内角的度数为`45`(360度除以八条边)。最后,使用循环来让海龟对象`pen`根据边长和内角度数出八条边,完成了正八边形的绘制。 你可以将上面的代码复制到Python环境运行,就可以看到海龟绘图出的正八边形。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值