1.while 循环
- 循环(while & for)的作用:
- 让指定代码重复执行
- 格式:
# 1. 定义一个计数器
i = 0
# 2. 定义一个while循环
while i < 3:
# 3.书写需要重复执行的代码
print('hello world!')
# 4.修改计数器
i += 1
- 注意:
- 即使循环结束,计数器的值依然存在
- 如果一个循环的判断条件一直成立,成为死循环(所以修改计数器很重要。。。)
2.while 循环应用1
```
# 1. 计算1~100的累积和(包含1和100)
# 0. 定义一个变量保存求和结果
ret = 0
# 1. 定义计数器
i = 1
# 2. 定义while循环
while i <= 100:
# 3. 书写需要重复执行的代码
ret += i
# 4. 修改计数器
i += 1
print('计算1~100的累积和(包含1和100)结果为%d' % ret)
```
3.while 循环应用2
```
# 0. 定义一个变量 保存求和结果
ret = 0
# 1. 定义计数器
i = 1
# 2. 定义while循环
while i < 101:
# 3. 书写需要重复执行的代码
# 3.1 判断是否是偶数
if i % 2 == 0:
ret += i
# 4. 修改计数器
i += 1
print('计算1~100之间偶数的累积和(包含1和100)结果为:%d' % ret)
```
4.while 循环嵌套
- 格式:
# 定义外循环计数器
i = 0
while 条件1:
条件1成立, 执行的代码
# 定义内循环计数器
j = 0
while 条件2:
条件2成立, 执行的代码
# 修改内循环计数器
j += 1
# 修改外循环计数器
i += 1
- 结论:
- 外部循环 循环1次,内部循环 循环N次
- 多个计数器都需要修改,避免死循环
5 while 嵌套应用
'''
完成以下图形的输出
*****
*****
*****
*****
*****
'''
i = 1
while i <= 5:
j = 1
while j <= 5:
# 输出“*”,且不换行
print("*",end="")
j += 1
# 内部循环完5次后,换行再执行
print()
i += 1
- print(“hello”) 实际为 print(“hello”,end="\n") 的简写
- 将 end="\n" 中的\n 去除,将完成不换行的功能,即在该行 输出完 此次内循环的所有值 直至进入外循环。
"""
*
* *
* * *
* * * *
* * * * *
"""
i = 1
while i <= 5:
j = 1
while j <= i:
print("*", end=" ")
j += 1
print()
i += 1
6.for循环
- 循环分类
- while循环
- 死循环(必须设置终止条件,例如修改计数器)
- for循环
- 循环遍历可迭代对象
- 可迭代对象:只要可以使用for循环遍历的对象就是可迭代对象
- 对象:变量(python中,万物皆对象)
- 格式:
for 临时变量 in 字符串等可迭代对象& range函数
- range用法
- range(a)
- [0, a)
- range(a, b)
- [a, b)
- random.randint用法
- randint(a, b)
- [a, b]
- range 和 randint 均只会在区间取整
7.判断条件问题
flag = True
a = (flag == True)
print(a)
if flag == True:
print('哈哈')
- 常理来说,我们的判断条件可能会如上书写,由print(a)的到的数据可知,if本身的判断逻辑是看条件本身是True or False,在决定执行后面的代码,所以可以对其进行简写,如下:
flag = True
if flag:
print('哈哈')
a = -1
if a:
print('哈哈')
- 除了True or False, (其他数字 or 0) 也可以作为if的判断条件,非0即真,为0则假,和True or False等价
- 但是一般还是会使用True or False, 显得专业
8.break and continue
- 必须配合循环(while & for)使用
- 特点:
- break: 终止循环
- continue:提前结束本次循环,并马上进入下次循环
- 只会影响其所在或者最近的层级,不会影响外层
- 思考:
- 只要循环中出现了break 或者 continue 就会终止循环或者是提前结束本次循环
- 假命题,出现不一定执行,若其出现在内循环中,且内循环条件完全不成立时,不会执行。
9. for-else
- 格式:
for 临时变量 in 字符串等可迭代对象range:
循环成立执行的代码
else:
当for循环正常结束后, 将执行的代码
- 结论:
- 默认情况下,监听For循环正常结束后,将执行else中的代码
- 如果循环中执行了break 导致程序循环异常终止,那么else后的代码将不再执行
- while-else也同样存在,功能相同,不过因为代码冗长,导致很少使用