当前位置: 首页 > news >正文

【干货】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)

  1. 作用:对后续产生的随机数设置种子,其中参数为种子
  2. 参数:s,随机数种子,一个整数或浮点数
  3. 优点:准确复现随机数序列,用于重复程序的运行轨迹
  4. 示例:见2.2.2

2.2.2 random()

  1. 作用:生成一个[0.0,1.0)之间的随机小数,不包括1
  2. 参数:无
  3. 其他:是random库中最基本的函数,所有其他随机函数都是基于这个函数的扩展
  4. 示例

2.2.3 randint(a, b)

  1. 作用:生成一个[a, b]之间的随机整数,随机数可能等于b
  2. 参数:a,b均为整数
  3. 记忆:random(随机)+ integer(整数)
  4. 示例

2.2.4 getrandbits(k)

  1. 作用:生成k比特长度的随机整数,其中k为二进制位数的长度
  2. 参数:k,一个整数
  3. 记忆:get(获取)+ random(随机)+ bits(比特)
  4. 示例

2.2.5 randrange(start, stop[ , step])

  1. 作用:生成一个[start, stop)之间以step为步数的随机整数,使用方法与range()类似
  2. 参数:start,整数,表示开始;stop,整数,表示结束;step,整数,表示步数
  3. 记忆:random(随机)+ range(范围)
  4. 示例

2.2.6 uniform(a, b)

  1. 作用:生成一个[a, b]之间的随机小数,随机数可能等于b
  2. 参数:a,b,整数或浮点数
  3. 示例

2.2.7 choice(seq)

  1. 作用:从序列类型中随机返回一个元素,序列类型包括列表、元组和字符串
  2. 参数:seq,一个序列类型变量
  3. 示例

2.2.8 shuffle(seq)

  1. 作用:将序列类型中的元素随机排列,返回打乱后的序列(主要为列表)
  2. 特点:由于排序后对原有变量进行重写,所以该函数不能作用于不可变序列,即主要用于列表类型
  3. 参数:seq,一个列表变量
  4. 示例

2.2.9 sample(pop, k)

  1. 作用:从pop表示的组合数据类型中随机选取k个元素,以列表类型返回。
  2. 注意pop中所含的元素要不少于k个
  3. 参数:seq,一个组合数据类型,如列表、集合、元组、字符串等;k,一个整数
  4. 示例

3. 习题

个人整理了一些Python习题与相应的解析,可见专栏:Python编程习题

4. 本文代码编译环境及版本

  1. Python IDLE
  2. 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 新特性 标准答案&#xff1a; 语义化标签&#xff1a; <header>&#xff1a;页头<nav>&#xff1a;导航<main>&#xff1a;主要内容<article>&#x…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验

一、多模态商品数据接口的技术架构 &#xff08;一&#xff09;多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如&#xff0c;当用户上传一张“蓝色连衣裙”的图片时&#xff0c;接口可自动提取图像中的颜色&#xff08;RGB值&…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

管理学院权限管理系统开发总结

文章目录 &#x1f393; 管理学院权限管理系统开发总结 - 现代化Web应用实践之路&#x1f4dd; 项目概述&#x1f3d7;️ 技术架构设计后端技术栈前端技术栈 &#x1f4a1; 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 &#x1f5c4;️ 数据库设…...

C#中的CLR属性、依赖属性与附加属性

CLR属性的主要特征 封装性&#xff1a; 隐藏字段的实现细节 提供对字段的受控访问 访问控制&#xff1a; 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性&#xff1a; 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑&#xff1a; 可以…...

Golang——9、反射和文件操作

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

PH热榜 | 2025-06-08

1. Thiings 标语&#xff1a;一套超过1900个免费AI生成的3D图标集合 介绍&#xff1a;Thiings是一个不断扩展的免费AI生成3D图标库&#xff0c;目前已有超过1900个图标。你可以按照主题浏览&#xff0c;生成自己的图标&#xff0c;或者下载整个图标集。所有图标都可以在个人或…...