Python语法基础(U.2)-基本图形绘制

这篇博客介绍了Python中的turtle库,用于基础图形绘制。内容包括turtle库的原理、绘图窗口、坐标体系、色彩模式以及如何通过turtle进行画笔控制、运动控制、方向控制等。适合初学者了解Python图形编程。

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

为mooc网站的北京理工大学的 嵩天 、黄天羽 、礼欣 三位老师的课程笔记。
欢迎starGITHUB可下载源码

  • 完成工作
  • 未完成

二、基本图形绘制

导学

上节课复习

TmpStr = input("请输入要转换的温度值:")
if TmpStr[-1] in ('F','f'):
    TmpStr = (eval(TmpStr[0:-1])-32)/1.8
    print("转换为:{:.2f}C".format(TmpStr))
elif TmpStr[-1] in ('C','c'):
    TmpStr = eval(TmpStr[0:-1])*1.8+32
    print("转换为:{:.2f}F".format(TmpStr))
else:
    print("输入错误!")
请输入要转换的温度值:3
输入错误!

文本来自在这里插入图片描述

2.1 深入理解Python语言

方法论:海龟绘图体系
C语言
  • 学习内容:指针、内存、数据类型
  • 语言本质:理解计算机系统结构
  • 解决问题:性能
  • 适用对象:计算机类专业
JAVA语言
  • 1:对象、跨平台、运行时
  • 2:理解主客体关系
  • 3:跨平台
  • 4:软件类专业
C++语言
  • 1:对象、多态、继承
  • 2:理解主客体关系
  • 3:大规模程序
  • 4:计算机专业
VB语言
  • 1:对象、按钮、文本框
  • 2:理解交互逻辑
  • 3:桌面应用
  • 4:不确定
Python语言
  • 1:编程逻辑、第三方库
  • 2:理解问题求解
  • 3:各类问题
  • 4:所有专业

超级语言:粘性整合已有程序,具备庞大计算生态
高级语言:接近自然语言,编译器,与CPU型号无关
汇编语言:有助记符,汇编器,与CPU型号有关
机器语言:代码直接执行,与CPU型号有关

2.2 实例 Python蟒蛇

1:计算机绘图原理是什么?

一段程序为何能够产生窗体?为何能在窗体上绘制图形?

2:Python蟒蛇绘制从哪开始?

如何绘制一条线?如何绘制一个弧形?如何绘制一个蟒蛇?

#PythonDraw.py
import turtle     #程序关键,import:保留字,引入了一个绘图库:turtle
turtle.setup(650, 350, 200, 200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
turtle.seth(-40)
for i in range(4):
    turtle.circle(40, 80)
    turtle.circle(-40,80)
turtle.circle(40, 80/2)
turtle.fd(40)
turtle.circle(16, 180)
turtle.fd(40 * 2/3)
turtle.done()

2.3 模块1:turtle库的使用

  • 1、turtle库基本介绍
  • 2、turtle绘图窗口布局
  • 3、turtle空间坐标体系
  • 4、turtle角度坐标体系
  • 5、RGB色彩体系

turtle库是turtle绘图体系的Python实现
Python计算生态 = 标准库 + 第三方库

  • 标准库:随解释器直接安装到操作系统中的功能模块
  • 第三方库:需要经过安装才能使用的功能模块
  • 库Library、包Package、模块Module,统称模块
1、turtle原理

有turtle在里面游走

2、turtle绘图窗口

turtle的画布空间:最小的单位是像素
turtle.setup(width, height, startx, starty):setup()不是必须的:如果没有设置startx和starty的值则默认为屏幕正中心
![6GW3Y%25_ V 8 J V8J%7B55N2J5DEE2S.png](attachment:6GW3Y%25_ V8JV8J%7B55N2J5DEE2S.png)

3、turtle库的使用

绝对坐标和海龟坐标

窗口的中心为(0, 0)
turtle.goto(x, y) #让任何位置的海龟去到达x,y的位置
![R8 %28(C %7DVRWI5%25MU%29UZ1@C5.png](attachment:R8 %28(C %7DVRWI5%25MU%29UZ1@C5.png)

海龟坐标

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vy0atPTe-1592569271511)(attachment:@EPDVCJ13D%7DQLKS5%5D%60M@%2528.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w9yyWsss-1592569271514)(attachment:%29H~7S4D@$)]T%7D918__4LC2Z5.png)

4、turtle角度坐标体系

turtle.seth(angle) #改变海龟的行进方向
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i9zyCxoo-1592569271520)(attachment:WE1%5DUQDQD.png)]
turtle.left(angle) #向左
turtle.right(angle) #向右
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7ijm4thd-1592569271521)(attachment:1NI%7DO99KJ3630IOE8L5%7B0HT.png)]

#实例
import turtle
turtle.left(45)
turtle.fd(150)
turtle.right(135)
turtle.fd(300)
turtle.left(135)
turtle.fd(150)
5、RGB色彩模式

由三种颜色构成的万物色

[图片][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-N98ysSUv-1592569271524)(attachment:%E5%9B%BE%E7%89%87.png)]

常用RGB色彩
英文名称RGB整数值RGB小数值中文名称
white255,255,2551,1,1白色
yellow255,255,01,1,0黄色
magenta255,0,2551,0,1洋红
cyan0,255,2550,1,1青色
blue0,0,2550,0,1蓝色
black0,0,00,0,0黑色

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-o8FQSA2q-1592569271526)(attachment:RMM3Y0%29YSCA%25VW01HGW%5DD%5BS.png)]

默认采用小数值,可切换为整数值
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D2jCejTo-1592569271528)(attachment:R%5B%7B@LS_%5BVLV%252HLKK%60BR%7DHW.jpg)]

2.4 turtle程序语法元素

  • 库引用与import
  • turtle画笔控制函数
  • turtle运动控制函数
  • turtle方向控制函数
  • 基本循环语句
  • Python蟒蛇绘制代码分析
1、库引用

扩充Python程序功能的方式

使用import保留字完成,采用 < a >.< b >()编码风格
    import<库名>  
    <库名>.<函数名>(<函数参数>)   

为了简化代码,使用from和import保留字共同完成

    from<库名>import<函数名>  
    from<库名>import*  
    <函数名>(<函数参数>)  

两种库引用方法比较:
在这里插入图片描述

import更多的用法

使用import和as保留字共同完成

    import<库名>as<库别名>  
    <库别名>.<函数名>(<函数参数>)  
2、turtle画笔控制函数

画笔操作后一直有效,一般成对出现

1抬起画笔,海龟在飞行(不形成绘图)
turtle.penup()---别名:turtle.pu()
2落下画笔,海龟在爬行(形成绘图)
turtle.pendown()---别名:turtle.pd()

画笔设置后一直有效,直至下次重新设置

1画笔宽度,海龟的腰围
turtle.pensize(width)---别名:turtle.width(width)

2画笔颜色,海龟在涂装
turtle.pencolor(color)---color为颜色字符串或r,g,b值

pencolor(color)的color参数可以有三种形式

颜色字符串:turtle.pencolor(“purple”)
RGB的小数值:turtle.pencolor(0.63, 0.13, 0.94)
RGB的元组值:turtle.pencolor((0.63, 0.13, 0.94))

3、运动控制函数

控制海龟行进:走直线&走曲线

1向前走,海龟走直线

turtle.forward(d)---别名:turtle.fd(d)
d:行进距离,可以为负数,行进距离单位是像素

2根据半径r绘制extent角度的弧形
turtle.circle(r, extent = None)
r:默认圆心在海龟左侧r距离的位置
extent:绘制角度,默认是360度整圆

4、方向控制函数

控制海龟面对方向:绝对角度&海龟角度

改变行进方向,海龟走角度
turtle.setheading(angle)---别名:turtle.seth(angle)
angle:改变行进方向,海龟走角度

turtle.left(angle):海龟向左转
turtle.right(angle):海龟向右转

5、循环语句

按照一定次数循环执行一组语句

for <变量> in range (<参数>)
    <被循环执行的语句>  

<变量>:表示每次循环的计数,0到<次数>-1
在这里插入图片描述

range()函数

range(N)
产生0到N-1的整数序列,共N个
range(M,N)
产生M到N-1的整数序列,共N-M个


点赞,关注,收藏👍,➕,👀点赞,关注,收藏👍,➕,👀点赞,关注,收藏👍,➕,👀
😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘😘
💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪💪

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值