Python基础6
今日内容概要
while循环补充说明
流程控制之for循环
今日内容详细
流程控制之while循环
 就是让一些代码反复的执行
# 格式
while 条件:
    条件成立之后执行的子代码(循环体代码)
# 执行流程
1.先判断条件是否成立
2.如果成立则执行循环体代码
3.循环体代码执行完毕后再次回到条件判断处 判断条件是否成立
4.如果成立 则继续执行循环体代码
5.按照上述规律依次执行 直到条件不成立才会结束循环体代码的执行
# 强制结束循环体
break   循环体代码一旦执行到break会直接结束循环
while 条件:
    条件成立之后执行的子代码(循环体代码)
    break  # 直接结束循环 )
    
# 结束本次循环
continue  循环体代码一旦执行到continue会结束本次循环 开始下一次循环
while 条件:
    条件成立之后执行的子代码(循环体代码)
    continue  
    条件成立之后执行的子代码(循环体代码)
    
    
# 不常用的循环方法
while 条件:
    循环体代码
else:
    循环体代码没有被强制结束的情况下 执行完毕就会执行else子代码

while循环补充说明
- 
死循环 真正的死循环是指一旦执行 CPU 功耗就会急速上升,直到系统采取紧急措施,所以尽量不要让CPU长时间不间断运算 # 死循环代码示例 a = 2 while True: a *= 2
- 
嵌套及全局标志位 一个 break只能结束它所在的那一层循环,有几个while的嵌套,想要一次性结束就应该写几个break,如果不想反复写,可以使用全局标志位is_flag = True while is_flag: username = input('请输入你的用户名:') password = input('请输入您的密码:') if username == '张三' and password == '123': while is_flag: cmd = input('请输入您的指令:') if cmd == 'exit': print(f'正在执行{cmd}指令') is_flag = False else: print('没有该指令,请重新输入') else: print('用户名或者密码错误')
流程控制之for循环
for循环能够做到的事情while都可以做到,只不过for循环在一些场景下使用更简单,主要的应用场景为:循环获取存储多个数据的数据内部数据值

for循环语法结构
for 变量名 in 待遍历的数据:  # 遍历就是将每个数据单独取出
    循环体代码
    
# 还有一种结构
for 变量名 in 待遍历数据:
    循环体代码
else:
    循环体代码没有被break强制结束的情况下运行结束后再运行的代码
    
# for循环中的break与continue
for循环体代码中如果执行到break也会直接结束整个for循环
for循环体代码中如果执行到continue也会结束当前循环直接开始下一次循环
for循环特点
- 擅长遍历取值
- 不需要结束条件,自动结束(遍历完)
for循环语法结构中的变量名如何命名
- 也要做到见名知意
- 如果遍历出来的数据值没有具体的含义,可以使用常用的如i,j,k,item,v等
# 实现同样的目的分别用for循环和while循环
# 循环打印出列表中中的每一个数据值
name_list = ['张三', '李四', '王五', '赵六']
'''通过while实现'''
count = 0
while count < 4:
    print(name_list[count])
    count += 1
'''通过for循环实现'''
for i in name_list:
    print(i)
  
可以发现实现同样的功能for循环使用的代码是少于while循环的
range方法
range可以简单的理解为是帮我们产生一个内部含有多个数字的数据
'''range中参数'''
for i in range(10):  # 起始位置为0  终止位置为9
    print(i)     # 0...9
    
for i in range(10, 20):   # 第一个为起始位置,第二个为终止位置
    print(i)         # 10...19
    
for i in range(1, 10, 2):   # 第三个为等差值 默认为1
    print(i)          # 1 3 5 7 9
range方法在不同版本解释器的区别
'''
在python2中
	range()
		直接产生一个列表 内部含有多个数据值
	xrange()
		其实就是python3中的range
在python3中
	range()
		类似于一个工厂 不会占用太多的内存空间 需要就生产
'''
作业
'''
作业1  计算1-100所有的数之和
'''
num = 0
for i in range(1, 101):
    num += i
print(num)
'''
作业2  判断列表中数字2出现的次数  
 l1 = [11,2,3,2,2,1,2,1,2,3,2,3,2,3,4,3,2,3,2,2,2,2,3,2]
'''
l1 = [11, 2, 3, 2, 2, 1, 2, 1, 2, 3, 2, 3, 2, 3, 4, 3, 2, 3, 2, 2, 2, 2, 3, 2]
num1 = 0
for i in l1:
    if i == 2:
        num1 += 1
print(f'数字2出现了{num1}次')
'''
作业3   编写代码自动生成所有页网址(注意总共多少页)   
https://movie.douban.com/top250
'''
# https://movie.douban.com/top250?start=0&filter=
# https://movie.douban.com/top250?start=25&filter=
# https://movie.douban.com/top250?start=50&filter=
# https://movie.douban.com/top250?start=50&filter=
web = 'https://movie.douban.com/top250?start=%d&filter='
for i in range(0, 250, 25):
    print(web % i)
'''
作业4    编写代码打印出下列图形(ps:for循环嵌套)  
*****  
*****  
*****  
*****
'''
for i in range(4):
    for i in range(5):
        print('*', end='')
    print()
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号