内容概要:while循环及其应用、内置函数range()+for…in…循环、for循环嵌套⭐
1.while循环
1.语法结构:
while 条件表达式:
条件执行体(循环体)
#如果条件表达体为非空(随便一个数字)或'True'循环会一直执行
2.循环结束的条件:
①循环条件为False 自然结束循环
②循环中遇到了break关键字跳出循环 (break作用:一旦遇到就会跳出循环)
3.循环次数不确定:while True(死循环)
下面是循环的应用:
循环的应用之一 : 循环体确定, 循环的次数确定.
举例:打印十次’我爱中国’
实现步骤 :
- 先定义一个变量 i, 并赋默认值为 0,这个 i 变量每次循环完毕就自增一下, 所以我们也叫它为
循环增量. - while 循环的条件 i < 次数
- 打印输出. 一定要记得, 在循环体之中要去修改循环增量的值. 让其自增.
i = 0
while i < 10:
print('我爱中国')
i += 1 #每次循环i都加1一直加到10不符合循环条件为止
结果如下图:
循环的应用之二 : 遍历指定范围的数.
遍历 : 在指定范围内依次取出每一个整型数值的操作, 我们称之为 ‘遍历’
思路 : 遍历 n ~ m 之间每一个整数的显示步骤 :
- 先定义循环增量 i, 赋默认值为 n
- 循环条件 : i <= m
- 在循环体内部, i 的值就是我们要遍历的 n~m 之间的每一个整数
- 在循环体内部一定要记得写 i += 1
举例:遍历 33 ~ 99 之间的所有整型数值
i = 33
while i <= 99:
print(i, end='\t')
i += 1
#趁机解释一下这个end='\t'的作用:print()函数是默认换行的就是因为其内部有一个end,
#现在我把end改写成\t(水平制表符)后就不会默认换行了而是变为了四个空格
结果如下图:
循环的应用之三 : 找指定范围中符合特定条件的数.
思路 : 找出我们班帅哥的步骤.
- 将每一个人拿出来. -> 先将这个范围之中的每一个整数遍历出来
- 判断这个人是不是帅哥. -> 判断遍历出来的数是不是符合特定条件的数
举例:请找出 1 ~ 100 之间的所有偶数
#需求找1~100间的所有偶数
#step one:遍历1~100
i = 1
while i <= 100:
i += 1
#step two:找偶数的特点:与2的余数为0(要在循环内哦)
if i % 2 == 0:
print(i)
得到结果如下:
循环的应用之四 : 求累加和 与 平均值.
案例 : 求出 1 到 100 之间的每一个整数的累加和.
思路:
- 先准备一个框变量.
- 遍历这堆数之中的每一个整数.
- 将遍历出来的每一个整数累加到框变量之中.
- 当遍历完成以后, 框变量之中存储的就是他们的累
i = 0
sum = 0
while i < 100:
i += 1
sum += i
print(sum)
得到结果如下图:
循环的应用之五 : 穷举
什么是穷举 ? 一个一个的试, 效率最低, 也是最笨的方式.
案例 : 有一个人买了一筐鸡蛋 (至少有 2 个) 两个两个的数, 多一个, 三个三个的数, 多
一个, 四个四个的数, 多一个. 请问 : 至少有几个鸡蛋 ?
思路:从2开始一个一个试
n = 2
while True: #不知道循环次数使用死循环
n += 1
if n % 2==1 and n % 3 ==1 and n % 4 == 1: #符合这个条件进入if分支
print(n)
break #跳出循环
结果如下图:
循环的应用之六 : 计数
计数:就是统计满足一定条件的数有多少个
案例 : 统计 1 ~ 100 之间满足 3 倍数的数值个数
#案例 : 统计 1 ~ 100 之间满足 3 倍数的数值个数
n = 1
num = 0
while n < 100:
n += 1
if n % 3 == 0:
num += 1
print(num)
结果:
33
2.内置函数range()+for…in…循环
一.内置函数range()
1.作用:生成一个整数序列
2.range类型的优点:不管 range 对象表示的整数序列有多长,所有 range 对象占用的内存空间都是相
同的,因为仅仅需要存储 start,stop 和 step,只有当用到 range 对象时,才会去计算序列中的相关元素
3.创建range对象的三种方式:
4. range(start, stop, step)
start 开始, 可以不写, 如果不写的话, 默认就从 0 开始.
stop 结束 (不包含该结束的数值) => 计算器默认是从 0 开始的.
step 步长 (每次增长多少数值) 可以不写, 如果不写的话, 默认每次增长 1 个数值.还可以为负
5.说明 : 如果我们仅仅只是需要循环的一个次数, 并不需要指定范围的数值, 会直接书写一个变量, 那就是stop
举例 : 需要生成一个 100 次循环. for i in range(100): 这个就会帮助我们实现 100 次从循环
二.for…in循环(这里真的难写,我要吐了🤮)
1.for-in 循环
• in 表达从(字符串、序列等)中依次取值,又称为遍历
• for-in 遍历的对象必须是可迭代对象
2.for-in的语法结构:
for 自定义的变量 in 可迭代的对象:
循环体
3.举例:
使用 for 循环, 求 1~100 之间所有整数的累加和
#需求:使用 for 循环, 求 1~100 之间所有整数的累加和
i = 1 #其实这个不用写的i会在range()定义它的值
sum = 0
for i in range(1, 101, 1):
sum += i
print(sum)
得到结果如下:
3.for循环嵌套⭐⭐
嵌套循环是指在一个循环语句的循环体中再定义一个循环语句的语法结构. 类似于大圈套小圈(地球公转的同时还有自转)
1.嵌套循环的特点:外层循环每执行一次, 内层循环就要执行所有次. 外面的事情如果要完成一次, 里面的事情要完成所有次.
2.举例:嵌套循环中的计数器
count = 0
for n in range(10): #外层运行10次
for j in range(10): #外层运行一次时,内层运行十次 =>10*10=100,所以count=100
count += 1
print(count)
结果如下图:
基本内容介绍到这,还有好多练习,见下一练习篇
ヾ(•ω•`)o
累死👴了