while循环:当条件成立的时候,执行程序。
# 假如有一天,我没有好好学习,老师罚我打印100遍‘好好学习,天天向上!’
# 问:在程序输出100遍"好好学习,天天向上"这个时候程序员会怎么做?
# print('好好学习,天天向上')
# print('好好学习,天天向上')
# print('好好学习,天天向上')
# print('好好学习,天天向上')
# print('好好学习,天天向上')
# print('好好学习,天天向上')
#
# # 乘法*
# print('好好学习,天天向上'*99)
# while 条件:
# 循环体(条件满足时段做的事情)
# 改变变量
# 在程序输出100遍"好好学习,天天向上"这个时候程序员会怎么做?
# i = 1 # 定义一个初始化值 i表示循环的次数 1+1=2+1=3+1..... i<=100结束条件
# while i <= 100: # 使用条件去控制重复执行的次数
# print(f'这里是我打印的第{i}次,好好学习,天天向上')
# # 赋值复合运算符 +=
# i = i + 1 # i += 1 相当于加了一个计数器,作用就是使循环不进入死循环
#
# # while同级不参与循环
# print('这个代码会循环打印吗?')
# 死循环/无限循环
# while True:
# 循环体(要循环做的事情)
# while True:
# print('zz')
2.while循环的应用
# 1、计算1-100的累加和: 1 + 2 + 3 + 4 + ...+ 100 = 结果
'''
题目分析:
1.1 使用while循环生成1-100的数字
1.2 定义初始化值为sum1 = 0保存累加的结果 0+1=1+2=3+3=6+4=10+5=15...+100
1.3 循环的内容: 当前的数字 + 下一个数字
1.4 打印累加的结果
'''
# a = 1 # 保存循环的次数
# sum1 = 0 # 保存累加的结果
# while a <= 100:
# # print(a)
# # 总结果 = 当前的数字 + 下一个循环的数字
# sum1 = sum1 + a
# a += 1 # 改变变量值
#
# print('计算结果:', sum1)
# 2、计算1-100的偶数累加和
'''
题目分析:
1.1 使用while循环生成1-100的数字
1.2 定义初始化值为sum1 = 0保存累加的结果
1.3 判断数字是否是偶数 能够被2整除得0就是偶数
1.4 循环的内容: 当前的数字 + 下一个数字
1.5 打印累加的结果
'''
# 方法一:
# i = 1 # 定义的循环次数
# sum1 = 0 # 定义累加求和的变量值
# while i <= 100:
# if i % 2 == 0: # 判断数字是否是偶数 能够被2整除得0就是偶数
# 偶数累加求和
sum1 += i
i += 1
# print('计算结果:', sum1)
# 方法二:
# i = 0 # 定义的循环次数
# sum1 = 0 # 定义累加求和的变量值
# while i <= 100:
# # 累加求和
# sum1 += i
# i += 2 # 计数器每次累加2
#
# print('计算结果:', sum1)
3.for循环:可以完成循环的功能,依次取出对象中的元素。
# for 临时变量名 in 列表或者字符串等可迭代对象:
# 循环满足条件时执行的代码
# 迭代=遍历(一个数据列表,从头到尾取值。)
# 可迭代对象:从可迭代对象中的第一个元素到最后一个元素取值的过程
# name = 'bingbing' # 字符串类型可以被for循环遍历的 --> 可迭代对象
# for i in name:
# print(i)
# for i in 'susu':
# print(i)
# int是整数类型
# num = 1234
# for a in num:
# print(a)
# TypeError: 'int' object is not iterable
# 类型错误: int不是可迭代对象
# for 临时变量名 in 可迭代对象/range():
# 循环满足条件时执行的代码
# range(取数)函数原型:range(start, end, step)
# start:计数的开始位置,默认是从0开始。
# end: 计数的结束位置
# step:每次跳跃的间距,不填默认为1。
# range(开始位置,结束位置)作用:生成数字,小括号中的是生成数字的范围
# 循环6次
# for i in range(1, 6): # 注意:使用range时,开始位置是包括在内的,但是就结束位置是不包含的
# print(i)
#
# for i in range(1, 7): # 原则:包前不包后
# print(i)
# 开始位置不写
# for i in range(6):
# print(i)
# 每次跳跃的间距,不填默认为1, 默认值改成2表示间隔1位
# for 临时变量 in range(开始位置,结束位置,间隔)
# for i in range(1, 20, 2):
# print(i)
# 怎样利用for循环去计算1+2+3+4+...+100的结果?
# 定义变量保存计算结果
# sum1 = 0
# for i in range(1, 101):
# sum1 += i
# print('计算结果:', sum1)
4.break和continue
# break: 当某个条件成立,退出整个循环,结束循环
# continue: 当某个条件成立,结束当前循环,进入下一循环
# 需求:吃6个草莓, 使用while循环执行吃草莓
# 一共吃6个草莓,吃完第一个,吃第二个...,这里""吃草莓"的动作是不是重复执行?
# i = 1 # 表示吃草莓的次数
# while i <= 6:
# print(f'我吃了第{i}个草莓')
# i += 1 # 改变变量
# 需求:我有10个草莓,吃完第6个草莓时,吃饱了,停止吃草莓的动作
# i = 1 # 表示吃草莓的次数
# while i <= 10: # 表示我有10个草莓
# # 判断吃草莓拿到第7个草莓时,不吃了
# if i == 7:
# print('我吃饱了,不吃了')
# break # 退出整个循环, 后面的循环不会执行了
#
# print(f'我吃了第{i}个草莓')
# i += 1 # 改变变量 i = i + 1
# for i in range(1, 11):
# # 判断吃草莓拿到第7个草莓时,不吃了
# if i == 7:
# print('我吃饱了,不吃了')
# break # 退出整个循环, 后面的循环不会执行了
#
# print(f'我吃了第{i}个草莓')
# 需求情况二: 我有10个草莓,吃到第7个草莓时,吃到坏果了,不吃了,但是我还是需要继续吃第8个第9个第10个直到吃完了才结束
# i = 1 # 表示吃草莓的次数
# while i <= 10:
# # 判断草莓是否吃到第7个
# if i == 7:
# print('吃出坏果了,草莓不要了!')
# i += 1 # 加计数器作用:使草莓个数从7到8
# continue # 退出当前循环,进入下一次循环
# print(f'我吃了第{i}个草莓')
# i += 1 # 改变变量
# for i in range(1, 11):
# 判断草莓是否吃到第7个
# if i == 7:
# print('吃出坏果了,草莓不要了!')
# continue # 退出当前循环,进入下一次循环
# print(f'我吃了第{i}个草莓')
# 总结:
# 1.1 while跟if的用法类似, if只执行一次, while循环执行
# 1.2 while作用循环效果,for作用循环效果,还可以取值
# 1.3 break和continue只能用在循环中,其他的不能单独使用的