Python---使用turtle模块+for循环绘制五角星---利用turtle(海龟)模块

首先了解涉及的新词汇,编程外国人发明的,所以大部分是和他们语言相关,了解对应意思,可以更好理解掌握。

import 英 /ˈɪmpɔːt/ n. 进口,进口商品;输入,引进;重要性;意思,含意 v. 进口,输入,引进;导入(计算机);<旧>意味,表明

time 英 /taɪm/ n. (以分钟、小时、天等计量的)时间;

turtle 英 /ˈtɜːt(ə)l/ n. 海龟;海龟肉;<美>龟;淡水龟;(计算机)龟标

forward 英 /ˈfɔːwəd/ adv. 向前;在船头,朝飞机头部;按顺序地;有进展地,前进地;向将来,往后;提前;(钟表)往前(拨);从......起,

sleep 英 /sliːp/ v. 睡,睡觉;

pencolor pen+color

pen 英 /pen/ n. 笔,钢笔;

color 英 /ˈkʌlə(r)/ n. <美>颜色;肤色;颜料;脸色 vt. 粉饰;给......涂颜色;歪曲 vi. 变色;获得颜色

right 英 /raɪt/ adj. 符合道德的,正当的;正确的,真实的; adv. (地方、位置或时间)正好,就在;直接地,径直地;一直地,完全地;<非正式>立即,毫不耽搁;正确地,确切地;<非正式>顺利,正常;在右面,向右边

案例:
使用turtle模块+for循环绘制五角星

思考:

turtle模块,就先import导入

接着看 for循环基本语法:

for 临时变量 in 序列 :

重复执行的代码1

重复执行的代码2

注意: 因为五角星是要一条直线,来回转方向5次,最终才能出来,所以要for循环5次。这里就涉及用到range范围。

range基本语法:

range(stop)

range(start, stop[, step])

start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);

stop: 计数到 stop 结束,但不包括 stop。例如:range(0,5) 是 [0, 1, 2, 3, 4] 没有 5

step:步长,默认为1。例如:range(0,5) 等价于 range(0, 5, 1) -------人话:中间隔几个数。 1 就是每次加1 增长。2就是每次加2增长,比如 0 2 4。3就是每次加3增长,比如 0 3。

range有一个口诀:顾头不顾尾,包含头部信息,但是不包含尾部信息。


代码:


复制代码
import turtle
import time

# 循环5次,pencolor用笔上色,red  红色
turtle.pencolor('red')
for i in range(5):
    turtle.forward(100)
    turtle.right(144)

time.sleep(10)

图示:

延伸思考:

如果是需求:使用turtle模块+while循环绘制五角星呢?

结合while三步走:


但是如果真的想要从1开始计数,也没关系。

① 定义一个计数器(初始化一个计数器)

i = 0或1

② 编写while循环结构条件

while 循环条件(判断 计数器 是否达到了目标位置):

循环体1

循环体2

...

③ 在循环内部更新计数器-------------如果不更新,那么一直都是一个数,原地不动。让他们+1,可以在某个时间点,某个数值点,达到预定的地方。

i = i + 1 或i += 1


可以写出下面代码:


复制代码
import turtle
import time

i = 0
# 循环5次,pencolor用笔上色,red  红色
turtle.pencolor('red')
while i < 5:
    turtle.forward(100)
    turtle.right(144)
    i += 1

time.sleep(10)

图示:

所以,还是之前经常提到的一句话:

所有的案例,都是现实中,已经发生或可能发生的,人类不可能接触到认知范围外的东西,从而不能编写出认知范围外的案例。所以,就按着正常人现实中的逻辑思维,一步步写出计划/方案/思路。最后再转变为代码即可。

只要掌握的方法多,就可以用各种方法实现目的,比如,去上学,可以走路,可以骑单车,电动车,公交车,轿车,地铁,火车,高铁,飞机等等,都可以实现目的,唯一区别就是哪个更有意义。

相关推荐
wn53120 分钟前
【Go - 类型断言】
服务器·开发语言·后端·golang
Narutolxy30 分钟前
Python 单元测试:深入理解与实战应用20240919
python·单元测试·log4j
Hello-Mr.Wang32 分钟前
vue3中开发引导页的方法
开发语言·前端·javascript
救救孩子把35 分钟前
Java基础之IO流
java·开发语言
WG_1736 分钟前
C++多态
开发语言·c++·面试
宇卿.43 分钟前
Java键盘输入语句
java·开发语言
Amo Xiang1 小时前
2024 Python3.10 系统入门+进阶(十五):文件及目录操作
开发语言·python
liangbm31 小时前
数学建模笔记——动态规划
笔记·python·算法·数学建模·动态规划·背包问题·优化问题
friklogff1 小时前
【C#生态园】提升C#开发效率:深入了解自然语言处理库与工具
开发语言·c#·区块链
B站计算机毕业设计超人1 小时前
计算机毕业设计Python+Flask微博情感分析 微博舆情预测 微博爬虫 微博大数据 舆情分析系统 大数据毕业设计 NLP文本分类 机器学习 深度学习 AI
爬虫·python·深度学习·算法·机器学习·自然语言处理·数据可视化