【干货】Python:turtle库的用法
【干货】Python:turtle库的用法
- 1. turtle库概述
- 2. turtle库与基本绘图
- 2.1 导入库的三种方式
- 2.1.1
- 2.1.2
- 2.1.3
- 2.2 窗体函数
- 2.2 画笔状态函数
- 2.2.1 seed(s)
- 2.2.2 random()
- 2.2.3 randint(a, b)
- 2.2.4 getrandbits(k)
- 2.2.5 randrange(start, stop[ , step])
- 2.2.6 uniform(a, b)
- 2.2.7 choice(seq)
- 2.2.8 shuffle(seq)
- 2.2.9 sample(pop, k)
- 3. 习题
- 4. 本文代码编译环境及版本
- 5. 更新日志
- 6. 参考
1. turtle库概述
- 功能:turtle(海龟)是Python重要的标准库之一,它能够进行基本的图形绘制
- 发展:turtle图形绘制的概念诞生于1969年,成功应用于LOGO编程语言,后发展为Python标准库之一
- 安装:turtle库无需额外安装,在Python 3 系列版本安装目录的Lib文件夹下可以找到turtle.py文件
- 更多:turtle库的更多介绍请访问 https://docs.python.org/3/library/turtle.html
2. turtle库与基本绘图
2.1 导入库的三种方式
2.1.1
2.1.2
2.1.3
2.2 窗体函数
函数 | 描述 |
---|---|
pendown() | 放下画笔 |
penup() | 提起画笔,与pendown()配对使用 |
pensize(width) | 设置画笔线条的粗细 |
pencolor() | 设置画笔的颜色 |
color() | 设置画笔和填充颜色 |
begin_fill() | 填充图形前,调用该方法 |
end_fill() | 填充图形结束 |
filling() | 返回填充的状态,True为填充,False为未填充 |
clear() | 清空当前窗口,但不改变当前画笔的位置 |
reset() | 清空当前窗口,并重置位置等状态为默认值 |
screensize() | 设置话不窗口的宽度、高度和背景颜色 |
hideturtle() | 隐藏画笔的turtle形状 |
showturtle() | 显示画笔的turtle形状 |
isvisible() | 如果turtle可见,则返回True |
write(str, font=None) | 输出font字体的字符串 |
2.2 画笔状态函数
2.2.1 seed(s)
- 作用:对后续产生的随机数设置种子,其中参数为种子
- 参数:s,随机数种子,一个整数或浮点数
- 优点:准确复现随机数序列,用于重复程序的运行轨迹
- 示例:见2.2.2
2.2.2 random()
- 作用:生成一个[0.0,1.0)之间的随机小数,不包括1
- 参数:无
- 其他:是random库中最基本的函数,所有其他随机函数都是基于这个函数的扩展
- 示例:
2.2.3 randint(a, b)
- 作用:生成一个[a, b]之间的随机整数,随机数可能等于b
- 参数:a,b均为整数
- 记忆:random(随机)+ integer(整数)
- 示例:
2.2.4 getrandbits(k)
- 作用:生成k比特长度的随机整数,其中k为二进制位数的长度
- 参数:k,一个整数
- 记忆:get(获取)+ random(随机)+ bits(比特)
- 示例:
2.2.5 randrange(start, stop[ , step])
- 作用:生成一个[start, stop)之间以step为步数的随机整数,使用方法与range()类似
- 参数:start,整数,表示开始;stop,整数,表示结束;step,整数,表示步数
- 记忆:random(随机)+ range(范围)
- 示例:
2.2.6 uniform(a, b)
- 作用:生成一个[a, b]之间的随机小数,随机数可能等于b
- 参数:a,b,整数或浮点数
- 示例:
2.2.7 choice(seq)
- 作用:从序列类型中随机返回一个元素,序列类型包括列表、元组和字符串
- 参数:seq,一个序列类型变量
- 示例:
2.2.8 shuffle(seq)
- 作用:将序列类型中的元素随机排列,返回打乱后的序列(主要为列表)
- 特点:由于排序后对原有变量进行重写,所以该函数不能作用于不可变序列,即主要用于列表类型
- 参数:seq,一个列表变量
- 示例:
2.2.9 sample(pop, k)
- 作用:从pop表示的组合数据类型中随机选取k个元素,以列表类型返回。
- 注意:pop中所含的元素要不少于k个
- 参数:seq,一个组合数据类型,如列表、集合、元组、字符串等;k,一个整数
- 示例:
3. 习题
个人整理了一些Python习题与相应的解析,可见专栏:Python编程习题
4. 本文代码编译环境及版本
- Python IDLE
- Python 3.7
5. 更新日志
时间 | 内容 |
---|---|
2023.2.9 | 首次发表 |
6. 参考
[1] 《全国计算机等级考试二级教程Python语言程序设计(2022年版)》
编辑不易,点赞收藏关注!
相关文章:
【干货】Python:turtle库的用法
【干货】Python:turtle库的用法1. turtle库概述2. turtle库与基本绘图2.1 导入库的三种方式2.1.12.1.22.1.32.2 窗体函数2.2 画笔状态函数2.2.1 seed(s)2.2.2 random()2.2.3 randint(a, b)2.2.4 getrandbits(k)2.2.5 randrange(start, stop[ , step])2.2.6 uniform(…...
信息安全与网络安全有什么区别?
生活中我们经常会听到要保障自己的或者企业的信息安全。那到底什么是信息安全呢?信息安全包含哪些内容?与网络安全又有什么区别呢?今天我们就一起来详细了解一下。什么叫做信息安全?信息安全定义如下:为数据处理系统建…...

花了5年时间,用过市面上95%的工具,终于找到这款万能报表工具
经常有粉丝问我有“哪个报表工具好用易上手?”或者是“有哪些适合绝大多数普通职场人的万能报表工具?” 从这里我大概总结出了大家选择报表工具最期望满足的3点: (1)简单易上手:也就是所谓的学习门槛要低…...

ESP32S3系列--SPI主机驱动详解(一)
一、目的SPI是一种串行同步接口,可用于与外围设备进行通信。ESP32S3自带4个SPI控制器外设,其中SPI0/SPI1内部专用,共用一组信号线,通过一个仲裁器访问外部Flash和PSRAM;SPI2/3各自使用一组信号线;开发者可以使用SPI2/3控制外部SPI…...

2023开工开学火热!远行的人们,把淘特箱包送上顶流
春暖花开,被疫情偷走的三年在今年开学季找补回来了。多个数据反馈,居民消费意愿大幅提升。在淘特上,开工开学节点就很是明显:1月30日以来,淘特箱包品类甚至远超2022年双11,成为开年“第一爆品”。与此同时&…...

Intel x86_64 PMU简介
文章目录前言一、性能监控概述二、CPUID information三、架构性能监控3.1 架构性能监控 Version 13.1.1 架构性能监控 Version 1 Facilities3.1.2 预定义的体系结构性能事件3.1.3 cmask demo测试参考资料前言 Intel 64 和 IA-32 架构提供了 PMU(Performance Monito…...

Vue (2)
文章目录1. 模板语法1.1 插值语法1.2 指令语法2. 数据绑定3. 穿插 el 和 data 的两种写法4. MVVM 模型1. 模板语法 root 容器中的代码称为 vue 模板 1.1 插值语法 1.2 指令语法 图一 : 简写 : v-bind: 是可以简写成 : 的 总结 : …...
ESP8266 + STC15基于AT指令通过TCP通讯协议获取时间
ESP8266 + STC15基于AT指令通过TCP通讯协议获取时间 如果纯粹拿32位的ESP8266模块给8位的单片机仅供授时工具使用,有点大材小用了。这里不讨论这个拿esp8266来单独开发使用。本案例只是通过学习esp8266 AT指令功能来验证方案的可行性。 🔖STC15 单片机采用的是:STC15F2K60S…...

谈谈Spring中Bean的生命周期?(让你瞬间通透~)
目录 1.Bean的生命周期 1.1、概括 1.2、图解 2、代码示例 2.1、初始化代码 2.2、初始化的前置方法和后置方法(重写) 2.3、Spring启动类 2.4、执行结果 2.5、经典面试问题 3.总结 1.Bean的生命周期 1.1、概括 Spring中Bean的生命周期就是Bean在…...

如何将VirtualBox虚拟机转换到VMware中
转换前的准备 首先需要你找到你的virtualbox以及VM安装到哪个文件夹里了,需要将这两个文件夹添加进环境变量Path中。 如果你记不清了,可以用everything全局搜索一下“VBoxManage.exe’以及“vmware-vdiskmanager.exe”,看一眼这个程序放到哪…...
洞庭龙梦(开发技巧和结构理论集)
1、经验来源,单一获取方式。进行形态等级展示。唯一游戏系统经验来源。无主线和支线剧情。2、玩家使用流通货币(充值货币),到玩家空间商城充值游戏,两人以上玩家进行游戏,掉落道具。交易系统游戏玩法&#…...

【23种设计模式】创建型模式详细介绍
前言 本文为 【23种设计模式】创建型模式详细介绍 相关内容介绍,下边具体将对单例模式,工厂方法模式,抽象工厂模式,建造者模式,原型模式,具体包括它们的特点与实现等进行详尽介绍~ 📌博主主页&…...
@Bean的处理流程,源码分析@Bean背后发生的事
文章目录写在前面关键类ConfigurationClassPostProcessor1、ConfigurationClassPostProcessor的注册2、ConfigurationClassPostProcessor的处理过程(1)parse方法中,Bean方法的处理(2)注册解析Bean标注的方法写在前面 …...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...

【配置 YOLOX 用于按目录分类的图片数据集】
现在的图标点选越来越多,如何一步解决,采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集(每个目录代表一个类别,目录下是该类别的所有图片),你需要进行以下配置步骤&#x…...
管理学院权限管理系统开发总结
文章目录 🎓 管理学院权限管理系统开发总结 - 现代化Web应用实践之路📝 项目概述🏗️ 技术架构设计后端技术栈前端技术栈 💡 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 🗄️ 数据库设…...
C#中的CLR属性、依赖属性与附加属性
CLR属性的主要特征 封装性: 隐藏字段的实现细节 提供对字段的受控访问 访问控制: 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性: 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑: 可以…...

Golang——9、反射和文件操作
反射和文件操作 1、反射1.1、reflect.TypeOf()获取任意值的类型对象1.2、reflect.ValueOf()1.3、结构体反射 2、文件操作2.1、os.Open()打开文件2.2、方式一:使用Read()读取文件2.3、方式二:bufio读取文件2.4、方式三:os.ReadFile读取2.5、写…...

PH热榜 | 2025-06-08
1. Thiings 标语:一套超过1900个免费AI生成的3D图标集合 介绍:Thiings是一个不断扩展的免费AI生成3D图标库,目前已有超过1900个图标。你可以按照主题浏览,生成自己的图标,或者下载整个图标集。所有图标都可以在个人或…...