【干货】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标注的方法写在前面 …...

shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...
【Go语言基础【12】】指针:声明、取地址、解引用
文章目录 零、概述:指针 vs. 引用(类比其他语言)一、指针基础概念二、指针声明与初始化三、指针操作符1. &:取地址(拿到内存地址)2. *:解引用(拿到值) 四、空指针&am…...

使用Spring AI和MCP协议构建图片搜索服务
目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式(本地调用) SSE模式(远程调用) 4. 注册工具提…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...
Webpack性能优化:构建速度与体积优化策略
一、构建速度优化 1、升级Webpack和Node.js 优化效果:Webpack 4比Webpack 3构建时间降低60%-98%。原因: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...
MFE(微前端) Module Federation:Webpack.config.js文件中每个属性的含义解释
以Module Federation 插件详为例,Webpack.config.js它可能的配置和含义如下: 前言 Module Federation 的Webpack.config.js核心配置包括: name filename(定义应用标识) remotes(引用远程模块࿰…...
大数据驱动企业决策智能化的路径与实践
📝个人主页🌹:慌ZHANG-CSDN博客 🌹🌹期待您的关注 🌹🌹 一、引言:数据驱动的企业竞争力重构 在这个瞬息万变的商业时代,“快者胜”的竞争逻辑愈发明显。企业如何在复杂环…...
简单介绍C++中 string与wstring
在C中,string和wstring是两种用于处理不同字符编码的字符串类型,分别基于char和wchar_t字符类型。以下是它们的详细说明和对比: 1. 基础定义 string 类型:std::string 字符类型:char(通常为8位)…...
python读取SQLite表个并生成pdf文件
代码用于创建含50列的SQLite数据库并插入500行随机浮点数据,随后读取数据,通过ReportLab生成横向PDF表格,包含格式化(两位小数)及表头、网格线等美观样式。 # 导入所需库 import sqlite3 # 用于操作…...