输入/输出文字

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm=1001.2014.3001.5501

在海龟绘图中,也可以输入或者输出文字,下面分别进行介绍。

1  输出文字

输出文字可以使用write()方法来实现,语法如下:

turtle.write(arg, move=False, align="left", font=("Arial", 8, "normal"))

参数说明:

l  arg :必选参数,用于指定要输出的文字内容,该内容会输出到当前海龟光标的所在位置。

l  move :可选参数,用于指定是否移动画笔到文本的右下角,默认为False(不移动)。

l  align :可选参数,用于指定文字的对齐方式,其参数值为left(居左)、center(居中)或者right(居右)中的任意一个,默认为left。

l  font :可选参数,用于指定字体、字号和字形,通过一个三元组(字体,字号,字形)指定。

说明:字形可设置的值为normal( 表示正常)、bold( 粗体)、italic( 斜体)、underline( 下划线)等。

例如,在屏幕中心输出文字“命运给予我们的不是失望之酒,而是机会之杯。”,指定字体为宋体,字号为18,字形为normal(表示正常),代码如下:

import turtle # 导入海龟绘图模块

turtle.color('green') # 填充颜色

turtle.up() # 抬笔

turtle.goto(-300,50)

turtle.down() # 落笔

turtle.write('命运给予我们的不是失望之酒,而是机会之杯。',font=('宋体',18,'normal'))

turtle.done() # 海龟绘图程序的结束语句(开始主循环)

运行上面的代码,将显示如图15.37所示的效果。

图15.37  在屏幕中输出文字

从图15.37中可以看出,输出文字时,海龟光标并没有移动,如果将第6行代码修改为以下代码:

turtle.write('命运给予我们的不是失望之酒,而是机会之杯。',True,font=('宋体',18,'normal'))

再次运行程序,将显示如图15.38所示的效果。

图15.38  移动光标后的效果

2  输入文字

在海龟绘图中,如果想与用户交互,获取用户输入的文字,可以通过textinput()方法弹出一个输入对话框来实现。该方法的返回值为字符串类型。textinput()方法的语法如下:

turtle.textinput(title, prompt)

参数说明:

l  title :用于指定对话框的标题,显示在标题栏上。

l  prompt :用于指定对话框的提示文字,提示要输入的信息。

l  返回值:返回输入的字符串,如果对话框被取消则返回None。

例如,先弹出输入对话框,要求用户输入一段文字,然后输出到屏幕上,代码如下:

import turtle # 导入海龟绘图模块

turtle.color('green') # 填充颜色

word = turtle.textinput('温馨提示:','请输入要打印的文字') # 弹出输入对话框

turtle.write(word,True,font=('宋体',18,'italic')) # 输出文字

turtle.done() # 海龟绘图程序的结束语句(开始主循环)

运行程序,将显示如图15.39所示的输入对话框,输入文字“学无止境”并单击OK按钮后,在屏幕上将显示如图15.40所示的文字。

     

图 15.39  输入对话框

图15.40   在屏幕中输出的效果

通过textinput()方法返回的内容为字符串,如果想要输入数值,可以使用numinput()方法实现,该方法的返回值为浮点类型。numinput()方法的语法如下:

turtle.numinput(title, prompt, default=None, minval=None, maxval=None)

参数说明:

l  title :必选参数,用于指定对话框的标题,显示在标题栏上。

l  prompt :必选参数,用于指定对话框的提示文字,提示要输入什么信息。

l  default :可选参数,用于指定一个默认数值。

l  minval :可选参数,用于指定可输入的最小数值。

l  maxval :可选参数,用于指定可输入的最大数值。

例如,先弹出输入对话框,要求用户输入一个1~9之间的数,然后输出到屏幕上,代码如下:

import turtle # 导入海龟绘图模块

turtle.color('green') # 填充颜色

# 数字输入框

num = turtle.numinput('温馨提示:','请输入1~9之间的数字:',default=1, minval=1, maxval=9)

turtle.write(num,True,font=('宋体',18,'normal')) # 输出获取的数字

turtle.done() # 海龟绘图程序的结束语句(开始主循环)

运行程序,将显示如图15.41所示的输入对话框,输入数字0,并单击OK按钮后,将弹出 Too small对话框,提示输入的值不允许,请重新输入,如图15.42所示,单击“确定”按钮,关闭Too small对话框,将返回到输入对话框,输入7,并单击OK按钮后,在屏幕上将显示数字7.0,如图15.43所示。

   图 15.41  输入对话框 

图 15.42  输入不允许的数值时的效果 

图15.43  绘制输入的数值

动手试一试5

任务一:输出逐渐变大的文字

在海龟绘图中,默认文字是同样大小并且一次性地输出到屏幕上。本任务要求将一行自己喜欢的文字一个一个地进行输出,并且逐渐变大。例如,输出“唯有行动才能改造命运”,效果如图15.44所示。

图15.44  输出逐渐变大的文字

任务二:根据用户输入的边数绘制多边形

本任务要求:通过输入对话框让用户输入一个数值作为要绘制多边形的边数,从而实现绘制指定边数的多边形。例如,用户在弹出的数字输入对话框中,输入6,则绘制一个六边形,如图15.45所示。

图15.45  根据用户输入的边数绘制多边形(六边形)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/35158.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浊度传感器设备的监测控制和智慧运维

浊度传感器是一种用于测量液体中悬浮颗粒浓度从而反映液体浊度的设备。 其工作原理主要基于以下几种常见方式: 1. 散射光测量原理:当光线穿过含有悬浮颗粒的液体时,颗粒会使光线发生散射。传感器通过测量特定角度的散射光强度来确定浊度。散…

骑马与砍杀战团mod制作-基础-对话制作笔记(四)

骑马与砍杀战团mod制作-基础-对话制作笔记(四) 资料来源 学习的资料来源: b站【三啸解说】手把手教你做【骑砍】MOD,基础篇,链接为: https://www.bilibili.com/video/BV19x411Q7No?p4&vd_sourcea507…

免费领!系统学习上位机编程的流程与基础教程

上位机电气自动化plc编程全套入门教程工具 华山编程导师根据当前招聘需求的关键点,原创录制了一套系统的学习流程和基础教程,帮助你从快速入门到掌握上位机编程的技能。 二. 学习准备 为了更好地学习并实现80%以上的代码运行,建议准备一个工…

Android音频系统

最近在做UAC的项目,大概就是接收内核UAC的事件,也就是声音相关事件。然后就是pcm_read和AudioTrackr->write之间互传。感觉略微有点奇怪,所以简单总结一下。 1 UAC的简要流程 open_netlink_socket 打开内核窗口,类似于ioctl。…

[leetcode]valid-triangle-number. 有效三角形的个数

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:int triangleNumber(vector<int>& nums) {int n nums.size();sort(nums.begin(), nums.end());int ans 0;for (int i 0; i < n; i) {for (int j i 1; j < n; j) {int left j 1, righ…

大模型RAG技术:构建高效、可信赖的知识检索系统

前言 LLM 问题 幻觉&#xff1a;在没有答案的情况下提供虚假信息。 过时&#xff1a;当用户需要特定的当前响应时&#xff0c;提供过时或通用的信息。 来源&#xff1a;从非权威来源创建响应。由于术语混淆&#xff0c;不同的培训来源使用相同的术语来谈论不同的事情&#…

制造业包括哪些?需要堡垒机吗?

制造业-国民经济的主体&#xff0c;是立国之本、兴国之器、强国之基&#xff0c;一个关系着大家吃穿住行的行业&#xff0c;一个与大家息息相关的行业。但大家对于制造业还有很多不了解&#xff0c;有小伙伴在问&#xff0c;制造业包括哪些&#xff1f;需要堡垒机吗&#xff1f…

k8s使用Endpoint将信息存储到集群外部数据库

https://mp.csdn.net/mp_blog/creation/editor/139864305 上一篇文章

引领AI新时代:深度学习与大模型的关键技术

文章目录 &#x1f4d1;前言一、内容概述二、作者简介三、书籍特色四、学习平台与资源 &#x1f4d1;前言 在数字化浪潮席卷全球的今天&#xff0c;人工智能&#xff08;AI&#xff09;和深度学习技术已经渗透到我们生活的方方面面。从智能手机中的智能语音助手&#xff0c;到…

20.流入门

学习知识&#xff1a;输入流和输出流读文件的简单使用 test.txt&#xff1a; iloveu是我爱你的意思。 Main.java import java.io.*;public class Main {public static void main(String[] args) {// 1.利用输入流读文件//读取test.txt并输出文件内容try{FileInputStream in…

分类预测 | Matlab实现GA-XGBoost遗传算法优化XGBoost的多特征分类预测

分类预测 | Matlab实现GA-XGBoost遗传算法优化XGBoost的多特征分类预测 目录 分类预测 | Matlab实现GA-XGBoost遗传算法优化XGBoost的多特征分类预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现GA-XGBoost遗传算法优化XGBoost的多特征分类预测&#xff0c;…

【Hadoop集群搭建】集群崩溃处理及启动时常见报错解决办法

目录 1. 集群崩溃处理 1.1 杀死进程 1.2 删除目录&#xff08;logs/和hadoopdata/&#xff09; 1.3 重新初始化集群 1.4 重新启动集群 2. 启动时常见报错 2.1 报错如下 2.2 在运行程序测试 MapReduce 计算框架时报错如下 2.3 报错如下 1. 集群崩溃处理 1.1 杀死进程 sbin/st…

SpringBoot优点达项目实战:项目基本配置(二)

SpringBoot优点达项目实战&#xff1a;项目基本配置&#xff08;二&#xff09; 文章目录 SpringBoot优点达项目实战&#xff1a;项目基本配置&#xff08;二&#xff09;1、项目初始化配置2、MyBatisPlus配置3、Knife配置4、定义统一返回数据结构 1、项目初始化配置 创建appli…

学习笔记——动态路由——RIP(RIP工作原理/防环机制)

三、RIP工作原理/防环机制 1、工作原理 配置好RIP的路由器会每隔30s,向邻居路由器自动发送RIP路由更新报文。报文里面携带了其所知道的所有路由。 通过发送数据包进行路由信息的交互&#xff0c;路由器启动RIP协议&#xff0c;向周围邻居路由器传递request(请求)response(响…

克隆网站的风险

克隆网站的风险 随着互联网的快速发展&#xff0c;克隆网站也变得越来越常见。克隆网站是指复制原始网站的外观和功能&#xff0c;并伪装成原始网站。虽然克隆网站可以提供与原始网站相似的服务和体验&#xff0c;但它们也带来了一系列风险。本文将探讨克隆网站的风险&#xff…

Docker 从入门到精通(大全)

一、概述 1.1 基本概念 Docker 是一个开源的应用容器引擎&#xff0c;基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中&#xff0c;然后发布到任何流行的 Linux 机器上&#xff0c;也可以实现虚拟化。…

bigtop gradle 任务依赖关系

./gradlew deb 会编译ubuntu的所有deb包 任务deb会依赖17个任务&#xff0c;它们会按字母排序执行&#xff0c;如下&#xff1a; alluxio-deb bigtop-groovy-deb bigtop-jsvc-deb bigtop-utils-deb flink-deb hadoop-deb hbase-deb hive-deb kafka-deb livy-deb phoenix-deb …

这5款国内可用的宝藏AI视频工具,不允许有人还不知道!(建议收藏)

文章首发于公众号&#xff1a;X小鹿AI副业 大家好&#xff0c;我是程序员X小鹿&#xff0c;前互联网大厂程序员&#xff0c;自由职业2年&#xff0c;也一名 AIGC 爱好者&#xff0c;持续分享更多前沿的「AI 工具」和「AI副业玩法」&#xff0c;欢迎一起交流~ 前几天一位粉丝说给…

【MySQL】数据库——存储引擎

一、存储引擎概述 1.概念 MySQL中的数据用各种不同的技术存储在文件中&#xff0c;每一种技术都使用不同的存储机制、索引技巧、锁定水平并最终提供不同的功能和能力&#xff0c;这些不同的技术以及配套的功能在MySQL中称为存储引擎存储引擎是MySQL将数据存储在文件系统中的存…

会声会影2024永久激活码序列号注册机分享

大家好呀&#xff0c;今天我想给大家安利一款我最近超级喜欢的软件——会声会影2024&#xff01;&#x1f31f; 作为一个视频编辑爱好者&#xff0c;我尝试过很多视频编辑软件&#xff0c;但总感觉少了那么一点点“火花”。直到我遇到了会声会影2024&#xff0c;它完全改变了我…