首页 > 编程语言 >A021 《斗图大赛》编程 源码

A021 《斗图大赛》编程 源码

时间:2024-01-19 20:32:26浏览次数:36  
标签:turtle write while 源码 A021 import 斗图 font True

一、课程介绍

本节课将学习新的 while 循环,并结合布尔值 True 实现无限循环,最终实现一个动态表情包的效果。

A021  《斗图大赛》编程 源码_time.sleep()

二、重难点解析

A021  《斗图大赛》编程 源码_while True_02布尔值

在编程中,True 是真,False 是假。“真,假”,也是“对,错”的意思,它们是由英国著名数学家和逻辑学家乔治布尔提出的。

所以,True 和 False 也叫做布尔值,用于表示条件成立,和条件不成立。

A021  《斗图大赛》编程 源码_time.sleep()_03while True

while 的意思是当什么什么的时候,是另一种循环结构。

使用时,while 后面要加上判断条件和英文冒号,然后将要重复执行的代码缩进到它里面。

while 判断条件:
    重复执行的代码

只要 while 后的条件是永远正确的,就可以不停地执行缩进的代码,即无限循环。 可以将条件直接替换成布尔值 True,代表此处条件判断的结果永远正确,实现最简单、最直接的无限循环。

# 永远只会一直打印 1
while True:
    print(1)
print(2)

A021  《斗图大赛》编程 源码_while True_04time.sleep()

time 库,即时间库,其中的 sleep 方法可以让程序暂时休息一下,也就是暂停运行。

使用时方法的括号里填入要暂停的时间,单位是秒。比如写 3 就代表程序要暂停 3 秒。

import time
print(1)
time.sleep(3)
print(2)

A021  《斗图大赛》编程 源码_while True_05write()

turtle 画笔的 write() 方法可以书写包含中文、英文、数字、特殊符号等的字符串,字会以画笔箭头的尖端右上角为起点书写。

方法括号中的第一个参数是待写的字符串。

第二个参数可以是对计算机字体的设置,包含对字体外形、大小的改变。需要通过 font 明确指定要设置字体,小括号中的字体外形与大小用英文逗号隔开。字体外形可以写一个没内容的字符串,会自动找到能用的外形。

import turtle
p = turtle.Pen()

p.write('看我多聪明~', font=('', 30))

turtle.done()

三、单词卡

face [feɪs] 脸

while [waɪl] 当...的时候

true [truː] 真

false [fɔːls] 假

time [taɪm] 时间

sleep [sliːp] 睡眠

write [raɪt] 写

四、小试牛刀

4.1 源码操作

编写代码,实现一个不断绘制、永远不停的方形螺旋线。

A021  《斗图大赛》编程 源码_write()_06

import turtle
p = turtle.Pen()

n = 0
while True:
    p.forward(n)
    p.right(90)
    n = n + 10
 
turtle.done()

4.2 源码操作

A021  《斗图大赛》编程 源码_time.sleep()_07

import turtle

p = turtle.Pen()
p.penup()

p.write('春眠不觉晓', font=('', 50))
p.right(90)
p.forward(80)
p.left(90)
p.write('处处闻啼鸟', font=('', 50))
p.right(90)
p.forward(80)
p.left(90)
p.write('夜来风雨声', font=('', 50))
p.right(90)
p.forward(80)
p.left(90)
p.write('花落知多少', font=('', 50))
    
turtle.done()

4.3 源码操作

编写代码,实现泡泡一直飘来飘去的效果。

A021  《斗图大赛》编程 源码_time.sleep()_08

import turtle
import random

p = turtle.Pen()
turtle.addshape('bubble4.png')
p.shape('bubble4.png')
p.penup()

while True:
    angle = random.randint(0, 360)
    p.left(angle)
    p.forward(50)
    
turtle.done()

五、扩展练习

A021  《斗图大赛》编程 源码_while True_09

import turtle
import time
turtle.bgpic('face3.gif')
p=turtle.Pen()
turtle.addshape('eye1.gif')
p.shape('eye1.gif')
p.penup()
p.goto(-100,350)
p.write('看我多聪明~',font=('',40))
p.goto(-85,120)

while True:
    p.forward(170)
    p.forward(-170)
    time.sleep(1)
turtle.done()

六、大开脑洞

这个程序,数数“贼拉”快!!

A021  《斗图大赛》编程 源码_write()_10

n = 0
while True:
    print(n)
    n = n+1


标签:turtle,write,while,源码,A021,import,斗图,font,True
From: https://blog.51cto.com/u_16173421/9336268

相关文章

  • 纯网页语音视频聊天和桌面分享(附源码,PC版+手机版)
    在网页里实现文字聊天是比较容易的,但若要实现视频聊天,就比较麻烦了。本文将实现一个纯网页版的视频聊天和桌面分享的Demo,可直接在浏览器中运行,不需要安装任何插件。一.主要功能及支持平台1.本Demo的主要功能有(1)一对一语音视频聊天。(2)远程桌面观看。(3)当客户端掉线时,会......
  • 若依框架入门一源码分析一登录验证码
    若依框架入门一源码分析一关于登录页面的验证码问题前端页面的验证码开关设置的是true,但是打开画面验证码没有被显示,原因是后端代码判断了redis中是否有值,有则覆盖前端<el-form-itemprop="code"v-if="captchaEnabled"><el-inputv-model="loginForm......
  • 如何实现纯网页语音视频聊天和桌面分享?(附源码,PC版+手机版)
    在网页里实现文字聊天是比较容易的,但若要实现视频聊天,就比较麻烦了。本文将实现一个纯网页版的视频聊天和桌面分享的Demo,可直接在浏览器中运行,不需要安装任何插件。一.主要功能及支持平台1.本Demo的主要功能有(1)一对一语音视频聊天。(2)远程桌面观看。(3)当客户端掉线时,会......
  • MySQL并行复制死锁源码解析
    最近一个MySQL5.7.21备库告警当天的备份失败,登录上去看的时候发现前一天的备份任务还没有结束,通过查看日志发现无法备份成功的原因是一直无法获取FTWRL锁,登录MySQL查看会话状态发现其中几个复制worker一致处于异常状态,下发STOPSLAVE命令时命令也一直被卡住,当时的会话状态如下:......
  • SpringSecurity-认证流程源码级详解
    自定义用户认证逻辑处理用户信息获取逻辑:UserDetailsService处理用户校验逻辑:UserDetails处理密码加密解密:PasswordEncoder认证处理流程以表单认证为例:从发起认证请求到认证过滤器,接着认证成功后,响应从认证过滤器返回的整个过程。SpringSecurity做了什么,设计到了哪些类?他......
  • 【深入挖掘Java技术】「源码原理体系」盲点问题解析之HashMap工作原理全揭秘(下)
    承接上文在阅读了上篇文章《【深入挖掘Java技术】「源码原理体系」盲点问题解析之HashMap工作原理全揭秘(上)》之后,相信您对HashMap的基本原理和基础结构已经有了初步的认识。接下来,我们将进一步深入探索HashMap的源码,揭示其深层次的技术细节。通过这次解析,您将更深入地理解HashMap的......
  • Android RECYCLEVIEWscrollbarDefaultDelayBeforeFade 源码
    AndroidRecyclerViewscrollbarDefaultDelayBeforeFade源码实现简介在Android开发中,RecyclerView是一个常用的控件,用于展示大数据集合的列表或网格。RecyclerView提供了一些自定义的属性和方法,方便开发者根据需求进行定制。其中一个常用的属性是scrollbarDefaultDelayBefo......
  • LinkedHashMao & LinkedHashSet源码阅读
    目录简介模型代码分析成员变量方法补充-LinkedHashSet总结参考链接本人的源码阅读主要聚焦于类的使用场景,一般只在java层面进行分析,没有深入到一些native方法的实现。并且由于知识储备不完整,很可能出现疏漏甚至是谬误,欢迎指出共同学习本文基于corretto-17.0.9源码,参考本文时......
  • 掌上医院预约挂号源码,uni-app+.net公众号、支付宝小程序预约挂号平台
    线上预约挂号系统构建了医院和患者的连接,通过改善患者院内的就医服务流程,以公众号、支付宝小程序为服务入口,为居民提供导诊、预约、支付、报告查询等线上线下一体化的就医服务,缩短患者就诊环节,提高医疗机构服务效率。●与医院HIS系统深度融合,实现诊疗业务及数据线上线下的双向传......
  • SpringSecurity系列,第四章:源码分析
    源码分析SpringSecurity的核心功能即为:认证(Authentication)、授权(Authorization)一、概览1、在SpringSecurity中,用户的认证信息主要由Authentication的实现类来保存,Authentication接口定义如下:【保存用户认证信息】publicinterfaceAuthenticationextendsPrin......