【python入门系类课程 第四课 循环的威力】

阅读 113

2022-03-24



前言

本系列课程是针对无基础的,争取用简单明了的语言来讲解,学习前需要具备基本的电脑操作能力,准备一个已安装python环境的电脑。如果觉得好可以分享转发,有问题的地方也欢迎指出,在此先行谢过。

先看一个例子:

打印10个hello world

不用循环:

【python入门系类课程 第四课 循环的威力】_python

使用循环

【python入门系类课程 第四课 循环的威力】_python_02

通过对比,我们可以看出明显第二个方法比较快捷方便和高效,并且数量越多越能体现出优势。

循环的意义与作用:​循环就是 重复做一件事情。如果一件事情都是重复的工作,那么就可以用循环。

下面来解释一下python中的循环该怎样使用。

格式:

先需要写一行代码

for i in range(10):

这里的i是叫做循环变量,名字不是固定的,写成j,n都是可以的;range里面的内容就是循环的次数,最后加一个冒号;其它的都是固定的。

接下来需要另起一行,缩进把循环的内容放到for循环里面。

for i in range(10):

print('hello world')

效果图:

【python入门系类课程 第四课 循环的威力】_for循环_03

深入理解循环变量和range

效果图:

【python入门系类课程 第四课 循环的威力】_电脑操作_04

解释:循环变量名字刚才说了是可以随意取的,i 和 j 的效果是一样的。那这里print的结果为什么是从0到4呢?

这里先来说说 Python中range()函数的用法:

函数原型:range(start, end, scan):

参数含义:

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

end:技术到end结束,但不包括end.例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5

scan:每次跳跃的间距,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

效果图:

【python入门系类课程 第四课 循环的威力】_python_05

绘制多边形

现在了解了python的for循环后,哪能用来干什么用呢?

绘制有规律的几何图形是最好不过的。

绘制三角形:

代码:

import turtle

pen = turtle.Pen()

for i in range(3):

pen.forward(100)

pen.left(120)

turtle.done()

效果图:

【python入门系类课程 第四课 循环的威力】_电脑操作_06

绘制正方形:

代码:

import turtle

pen = turtle.Pen()

for i in range(4):

pen.forward(100)

pen.left(90)

turtle.done()

效果图:

【python入门系类课程 第四课 循环的威力】_python_07

对比代码:

【python入门系类课程 第四课 循环的威力】_python_08

拓展:绘制任意的多边形:

【python入门系类课程 第四课 循环的威力】_for循环_09

【python入门系类课程 第四课 循环的威力】_for循环_10

【python入门系类课程 第四课 循环的威力】_for循环_11

前面都没问题,最后好像就出问题了,因为随着边数越来越多,这个图形就越来越大?

怎样解决这个问题呢?

第一种:自己输入长度:

代码:

import turtle

n_str = input("绘制几边形呢?")

n_int = int(n_str)# 把字符类型数字 变成 数字类型数字

l_str = input("边长多长呢?")

l_int = int(l_str)# 把字符类型数字 变成 数字类型数字

pen = turtle.Pen()

for i in range(n_int):

pen.forward(l_int)

pen.left(360/n_int)

turtle.done()

效果图:【python入门系类课程 第四课 循环的威力】_电脑操作_12

第二种:限制周长为一个固定数字

代码:

import turtle

n_str = input("绘制几边形呢?")

n_int = int(n_str)# 把字符类型数字 变成 数字类型数字

l_int = 400

pen = turtle.Pen()

for i in range(n_int):

pen.forward(l_int/n_int)

pen.left(360/n_int)

turtle.done()

效果图:【python入门系类课程 第四课 循环的威力】_for循环_13





长按二维码,

加关注!

叶子陪你玩

【python入门系类课程 第四课 循环的威力】_电脑操作_14



精彩评论(0)

0 0 举报