您的位置: 网站首页> python基础> 当前文章
python的while及for循环初步使用
老董-我爱我家房产SEO2019-06-04152围观,147赞
循环这种效果在计算机底层的实现原理我们不用深究,懂汇编的人可以明白(依赖jump指令)。我们先看下直观的效果。
# -*- coding: utf-8 -*-
i = 1
while i < 5 :
print('发财啦',i)
i += 1 # 自增 i = i+1
print('/////////////////////')
j = 1
for i in range(5): #range函数下文讲解
print('发财啦', j)
j += 1 # 自增 j = j+1
D:python3installpython.exe D:/python/py3script/python66.py 发财啦 1 发财啦 2 发财啦 3 发财啦 4 ///////////////////// 发财啦 1 发财啦 2 发财啦 3 发财啦 4 发财啦 5 Process finished with exit code 0
一、while循环
while循环语句结构
while条件表达式:
循环体语句块
1)while循环中,当条件表达式为真时,就会重复的执行循环体内的语句块,直到条件为假。从这个意义上看,while循环也可被当成分支语句使用,即如果条件表达式一开始就为假,则循环体部分将永远不会获得执行的机会。
2)使用while循环时,一定要保证循环条件有变成假的时候:否则这个循环将成为一个死循环,永远无法结束循环。例如:
# -*- coding: utf-8 -*-
# 下面是一个死循环
i = 0
while i < 10 :
print("执行循环:", i)
i -=1
print("无法跳出的循环体")
二、for循环
python中for循环语句的主要作用就是访问可迭代对象(序列,迭代器,生成器,字典,集合等)中的所有元素,并在所有元素都处理之后自动的结束循环。
for循环语句结构
for 变量名 in 可迭代对象(字符串|范围|集合等):
语句块
1)for-in循环中的变量的值受for-in循环控制,该变量将会在每次循环开始时自动被赋值,该变量也被称为循环计数器,如果对该变量赋值则会改变改变量。
2)for-in循环可用于遍历任何可选代对象。所谓可迭代对象,就是指该对象中包含一个__iter__方法,且该方法的返回值对象具有next()方法。
# -*- coding: utf-8 -*-
for i in range(5):
i = 6
print(i)
print('//////////////////')
for i in range(5):
print(i)
D:python3installpython.exe D:/python/py3script/python66.py 6 6 6 6 6 ////////////////// 0 1 2 3 4 Process finished with exit code 0
三:range函数
python3里range函数是用来生成一个由数字组成的列表的迭代器,它有三个参数,range(start,stop,step)和切片类似。
参数说明:
start:计数从start开始。默认是从0开始。例如range(5)等价于range(0,5);
stop:计数到stop结束,但不包括stop。例如:range(0,5)是[0,1,2,3,4]没有5;
step:步长,默认为1。例如:range(0,5)等价于range(0,5,1)。
四:迭代器(暂时先了解,迭代器、可迭代对象、生成器等概念先知道下即可)
1)迭代器其实就是一个实现了迭代器协议的容器对象,是一个可以记住遍历的位置的对象。
2)迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。如果需要重复的迭代同一个对象,只能再重新创建一个新的迭代器。
3)迭代器可以通过使用一个iter内建函数和一个序列来创建。
4)迭代器有两个基本的方法:__next__返回容器的下一个元素,__iter__返回迭代器本身。
# -*- coding: utf-8 -*- lis = [1,2,3] res = iter(lis) print(res) print(res.__iter__()) print(res.__next__()) print(res.__next__()) print(res.__next__())
D:python3installpython.exe D:/python/py3script/python66.py <list_iterator object at 0x00000221B1387518> <list_iterator object at 0x00000221B1387518> 1 2 3 Process finished with exit code 0
五、for、while循环应用
# -*- coding: utf-8 -*-
print("求1到100的和:")
i = 1
sum = 0
while i<=100:
if i%2 == 0:
sum = sum + i
i+=1
print("1~100的累积和为%d"%sum)
print("遍历字符串和下标:")
str1 = "hello"
for i in range(len(str1)):
print("str1[%d] = %s" % (i, str1[i]))
print("遍历字典、集合:")
# 遍历字典、集合
d = {'a': 1, 'b': 2,}
for key in d:
print(key, d[key])
for key, val in d.items(): # items()函数先了解下
print(key, val)
# 遍历集合
for s in set('abc'):
print(s)
print("enumerate函数打印序列的下标和值:")
# enumerate函数打印序列的下标和值
str2 = "hello"
for i, v in enumerate(str2):
print(i, v)
lis = ['a','b','c']
for i, v in enumerate(lis):
print(i, v)
D:python3installpython.exe D:/python/py3script/python66.py 求1到100的和: 1~100的累积和为2550 遍历字符串和下标: str1[0] = h str1[1] = e str1[2] = l str1[3] = l str1[4] = o 遍历字典、集合: a 1 b 2 a 1 b 2 a b c enumerate函数打印序列的下标和值: 0 h 1 e 2 l 3 l 4 o 0 a 1 b 2 c Process finished with exit code 0
很赞哦!
python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群
相关文章
文章评论
-
python的while及for循环初步使用文章写得不错,值得赞赏


