Python学记(三)turtle库
Python标准库:turtle库
Mark一下上次课的两个编程习题
- 获得用户输入的一个整数,参考该整数值,打印输出"Hello World",要求:
如果输入值是0,直接输出"Hello World",如果输入值大于0,以两个字符一行方式输出"Hello World"(空格也是字符),如果输入值小于0,以垂直方式输出"Hello World"
T = eval(input())
if T == 0:print('Hello World')
elif T >0:print('He\nll\no \nWo\nrl\nd')
else:for c in 'Hello World':print(c)
- 获得用户输入的一个字符串,格式如下:
M OP N 其中,M和N是任何数字,OP代表一种操作,表示为如下四种:+, -, *, /(加减乘除)根据OP,输出M OP N的运算结果,统一保存小数点后2位。注意:M和OP、OP和N之间可以存在多个空格,不考虑输入错误情况。
T = input()
print('{:.2f}'.format(eval(T)))
turtle库
Python蟒蛇绘制代码
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() ##程序执行完毕后不会退出
绘制结果:
turtle库又叫海龟库,是Python入门的绘图标准库。在Python生态体系中,包括第三方库和标准库,标准库就是随Python一同安装可以直接调用的库,第三方库则是编程人员在实际工作过程中形成的可以用来更高效和扩充编程功能的库,需要手动进行安装。
库引用
- import
import的用法有三种
1. import <库名>
2. from <库名> import <函数名>
2.1 from <库名> import* #代码中就不再需要使用<a>.<b>()的编程方式
3. import <库名> as <函数名>
第三种引用库的方法是比较推荐的方法,一方面它可以有效的避免函数名与用户定义函数重名的情况发生。另一方面将turtle库定义为t可以大幅度减少代码的冗余。比如蟒蛇绘制的代码
import turtle as t
t.setup(650, 350, 200, 200)
t.penup()
t.fd(-250)
t.pendown()
t.pensize(25)
t.pencolor('purple')
t.seth(-40)
for i in range(4):t.circle(40,80)t.circle(-40,80)
t.circle(40,80/2)
t.fd(40)
t.circle(16,180)
t.fd(40 * 2/3)
t.done()
经过了函数重命名,代码中的turtle函数全部被替换为了t,很大程度的减少了工作量。
turtle坐标体系
- 屏幕坐标系
在屏幕坐标体系中,屏幕左上角默认为为(0,0)。我们可以通过turtle.setup(width,height,x,y)函数来确定绘图窗口的位置和大小
比如说
import turtle
turtle.setup(800,400,0,0)
就是在屏幕左上方的(0,0)位置创建一个宽800高400的绘图窗体。(单位为像素)
空间坐标体系
- 绝对坐标系
如果想让海龟前往右上角的点,可以使用turtle.goto(100,100)
来实现
举个例子
import turtle as t
t.goto( 100, 100)
t.goto( 100,-100)
t.goto(-100,-100)
t.goto(-100,100)
t.goto(0,0)
结果为:
- 海龟坐标系
海龟坐标系是相对于海龟而言的,海龟行进的方向永远为正方向。
turtle.fd(<参数>) ##前进<参数>个像素
turtle.bk(<参数>) ##反方向<参数>个像素
turtle.circle(r,angle) ##以‘r’为半径,做‘angle’的左侧圆周运动
- 角度坐标系
举个?
import turtle as t
t.setup(600,400)
t.left(45)
t.fd(150)
t.right(135)
t.fd(250)
t.left(135)
t.fd(150)
运行结果:
RGB颜色体系
- RGB值
turtle库默认使用小数值
可以使用colormode()函数来改变
turtle.colormode()
##1.0 为小数值
##255 为整数值
turtle画笔控制函数
- 画笔函数
蟒蛇绘制示例中存在四种画笔控制函数,分别是:
turtle.penup() ##抬起画笔,不进行绘制 turtle.pu
turtle.pendown() ##放下画笔,进行绘制 turtle.pd
turtle.pensize() ##设置画笔的宽度 turtle.width()
turtle.pencolor() ##修改画笔颜色 turtle.pencolor("purple")
- 循环语句
格式:
for <变量> in range<参数>: ##不要忘记冒号<被循环执行的语句> ##注意要缩进
举个例子
for i in range(5):print(i)
0
1
2
3
4
5for c in range(4):print("number:",c)
number: 0
number: 1
number: 2
number: 3
Python学记(三)turtle库相关推荐
- 用python画小黄人步骤图-学Python画画:应用Turtle库画一个蠢萌的小黄人
学Python画画:应用Turtle库画一个蠢萌的小黄人 前言: 还记得小黄人哪只蠢萌蠢萌的单眼小黄人?就是喜欢做什么事都喜欢逞能的那只,下面用Python来实现一下,正在逃跑的小黄人.进群:7003 ...
- 用python画小黄人-学Python画画:应用Turtle库画一个蠢萌的小黄人
学Python画画:应用Turtle库画一个蠢萌的小黄人 前言: 还记得小黄人哪只蠢萌蠢萌的单眼小黄人?就是喜欢做什么事都喜欢逞能的那只,下面用Python来实现一下,正在逃跑的小黄人.进群:7003 ...
- 轻轻松松学会Python入门四:turtle库的使用
之前我们了解了实例温度转换,我们这一章主要讲turtle库的使用.turtle库是Python自带的标准库,不需要另外下载.Python的turtle库是一个直观有趣的图形绘制函数库.turtle(海 ...
- 使用Python的内置turtle库画彩虹
上图是使用turtle库绘制的彩虹.程序的关键点是将画笔的颜色渐变,再通过不断微小的角度转换绘制成彩虹 计算机中的颜色空间模型是典型的RGB模型,R,G,B分别对应光的三原色,色相是由RGB三个参数共 ...
- Python实用工具,turtle库,Python实现简易版时钟
前言 Python函数库众多,而且在不断更新,所以学习这些函数库最有效的方法,就是阅读Python官方文档.同时借助Google和百度. turtle库中文文档: https://docs.pytho ...
- Python 龟画图 关于 turtle库知识点 详细介绍
一.turtle库基本介绍 1. turtle(海龟)库是turtle绘图体系的Python实现 2. Python计算生态 标准库---随解释器直接安装到操作系统中的功能模块 第三方库---需要 ...
- python计算思维的概念_用Python学计算思维turtle详解
Turtle 库是 Python 语言中一个很流行的绘制图像的函数库, 想象一个小乌龟, 在一个横轴 为 x .纵轴为 y 的坐标系原点, (0,0) 位置开始,它根据一组函数指令的控制,在这个平面坐 ...
- Python简笔画——用Turtle库画一只《穿红靴子的小鸭》
<穿红靴子的小鸭>这幅画临摹了ins博主@inky.diary的小鸭水彩画,并做了一些调整. 用Python的Turtle库画画,难度不大,熟悉了基础函数后,新手可以快速入门.基础函数可以 ...
- Python -- 大作业 — 使用turtle库画皮卡丘
使用python的turtle库画皮卡丘 一.使用环境 在这里,我使用的是python 3.8.5版本的IDLE(也可以使用其他3.0以上版本,PyCharm也是可以的). 二.内容介绍 1.主要方法 ...
最新文章
- CSS教你玩转背景background-position(1)
- postgresql中自定义函数脚本的备份及恢复
- 事务回滚什么意思 try_分布式事务 TCC-Transaction 源码分析——事务恢复
- Spring Framework Reference Documentation手册官网下载地址
- Ubuntu16.04 修改主机名
- 利用chrome的Timeline观测系统的内存回收逻辑
- .net core 下的HttpClient、WebClient性能测试
- DevOps vs. Agile:它们有什么共同点?
- 前端学习(781):格式化日期年月日星期
- 10 有关业务/事件类型WQ在年2021的号码范围不存在
- 红橙Darren视频笔记 代理模式 动态代理和静态代理
- mysql文件导出NULL值处理_Mysql select into outfile NULL值导出的处理方法
- [Python] L1-026. I Love GPLT-PAT团体程序设计天梯赛GPLT
- 用typedef给结构体一个别名
- 10 个开源压力测试工具
- nRF51822 官方 Blinky 工程(多彩 LED)
- 2 SAP SCC1同一服务器传请求号
- 基于EEG信号与面部表情的连续情绪识别
- 学习笔记 | NIPS 2021 regularization cocktail 调优的 MLPs 在表格数据上优于 GBDTs | Regularization is All Your Need
- CART回归树算法过程
热门文章
- Python_Appium爬取wx朋友圈
- HTML、CSS、JS、jQuery
- 搭建SpringCloud配置中心 Config Server
- 【牛客多校第十场】Coffee Chicken
- java实现大乐透彩票
- 崩坏3九游服务器稳定吗,为什么崩坏三萌新入坑推荐选择官服而非渠道服,盘点几个必要的理由...
- betapubgmobile服务器维护,pubg mobile beta测试版
- 怒刷python作业(西北工业大学cpSkill平台)
- 广告坑死人,这年头如何辨别互联网金融的可靠性?
- mysql2004报错_mysqlbinlog备份时候报错Sanity check failed