python(For 循环语句)
一、For循环
- Python for 循环可以遍历任何序列的项目,如一个列表或者一个字符串或者字典等。
- 语法模式:for var in sequence:
- while 循环和 for 循环的区别
- 表达式不一样
- for i in xxx:
- while True:
- 执行逻辑不一样
- for 循环可以遍历任何序列的项目,比如字符串、列表、元组、字典、集合等序列类型,逐个获取序列中的各个元素
- while 循环会一直执行它下面的代码片段,直到它对应的布尔表达式为 False 时才会停下来。具体来讲,while 循环所作的和if语句类似,也是去检查一个布尔表达式的真假,不一样的是它下面的代码片段不是只被执行一次,而是执行完后再调回到 while 所在的位置,如此重复进行,直到 while 表达式为 False 为止
- for 循环的目的是遍历和为了限制循环体的执行次数
- while 循环目的是为了反复执行语句或代码块
- while 循环容易陷入死循环,而 for 循环不会陷入死循环
- 表达式不一样
(1)从某个集合(列表等)里顺次取值
#遍历字符串 name = 'ShenZhen' list1 = [] for a in name: list1.append(a) print (list1) #变量列表 fruits = ['banana', 'apple', 'mango'] for i in fruits: print ('当前水果 :',i) #遍历字典 dic1 = {'name':'zhangsan','age':'18','sex':'boy'} for key in dic1: print ('the key is %s,the value is %s'%(key,dic1[key]))
#三次密码错误重新输入账号 users = {"zhangsan":"123456","lisi":"234567","wangwu":"345678"} A = True while A: user = input("请输入你的账号:") if user in users.keys(): for i in range(3): pwd = input("请输入你的密码:") if pwd == users.get(user): print ("登录成功") A = False break else: print ("密码错误") else: print ("用户不存在")
(2)另外一种执行循环的遍历方式是通过索引,结合 range()内置函数使用
fruits = ['banana', 'apple', 'mango'] #Python3 range() 函数返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表 for index in range(len(fruits)): print ('当前水果 :', fruits[index]) print ("Good bye!")
# for循环求偶数和 list1 = [] for i in range(101): if i % 2 ==0: list1.append(i) print (sum(list1)) """ sum1 = 0 for i in range(0 ,101 ,2): sum1 += i print (sum1) """
# 用户登陆(三次机会重试) for i in range(3): a = input('请输入用户名:') b = input('请输入密码:') if a =='admin' and b ==123456: print ('登陆成功') break else: print('登录失败')
# 猜年龄游戏:要求:允许用户最多尝试3次,3次都没猜对的话,就直接退出,如果猜对了,打印恭喜信息并退出 for i in range(3): a = input('请输入年龄:') if a == '18': print ('恭喜') break else: print ('猜错了')
(3)冒泡排序
a = [2,5,1,7,9,3,4] for x in range(len(a)-1): for y in range(x+1,len(a)): if a[y] > a[x]: a[x],a[y] = a[y],a[x] print (a)
作者:一个老宅男
微信:ZhengYing8887
出处:https://www.cnblogs.com/ZhengYing0813/
备注:本文版权归作者所有,欢迎转载和添加作者微信探讨技术,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。