咱们在写代码时常常会用到循环,python中有for循环和while循环,咱们来详细的了解一下这两种循环。python
Python for循环能够遍历任何序列的项目,如一个列表或者一个字符串。函数
咱们经过一个例子来看一下for循环的具体使用,咱们经过range()
函数建立一个整数列表,而后将列表中的元素经过for循环打印出来。code
# for i in range(5)开始迭代的时候,生成一个数值0,第二次迭代再生成数值1,第三次迭代再生成数值2, for i in range(5): print(i) # 输出: 0 1 2 3 4
上面是使用了range()函数,咱们试试本身定义一个列表来经过for循环打印:blog
list1 = ['a', 'b', 'c'] for i in list1: print(l) # 输出: a b c
仔细看上面两个例子,咱们发现,循环每次迭代时,for会从序列中取一个元素赋值给控制变量i(可本身定义),下一轮迭代又取下一个元素赋值给i。字符串
for循环使用 else 语句get
除了使用单独的for语句,还可使用for ... else语句,else中的语句会在循环正常执行完
的状况下执行。it
list1 = ['a', 'b', 'c'] for i in list1: print(i) else: print("循环正常执行完毕") # 输出: a b c 循环正常执行完毕
上面咱们说到循环正常执行完毕的状况,那确定是还有循环不正常执行完毕的状况。什么状况就算不正常执行完毕的退出呢?像经过break、continue语句退出循环的就不算正常执行完毕。for循环
break语句
:退出整个循环,若是嵌套了循环,则退出break所在的那层循环。变量
continue语句
:跳过当前循环的剩余语句,而后继续进行下一轮循环。循环
pass语句
:不作任何事情,通常用作占位语句。
for迭代字典
for迭代字典时,能够分为不一样的几种方式:
dict1 = {'name': 'Tom', 'age': 11, 'sex': 'man'} for i in dict1.keys(): print(i) # 输出: name age sex
for i in dict1.values(): print(i) # 输出: Tom 11 man
for k, v in dict1.items(): print(k, v) # 输出: name Tom age 11 sex man
python range() 函数可建立一个整数列表,通常用在 for 循环中
语法:range(start, stop[, step])
while循环和for循环都能循环作一件重复的事情。不一样的地方在于for循环是在序列穷尽时中止,而while循环是在条件不成立时中止。 while循环的执行语句能够是单个语句或语句块,判断条件能够是任何表达式,任何非零、或非空(null)的值均为true。当判断条件假false时,循环结束。
咱们经过一个实例来看一下while循环的使用:
a = 3 while a >= 1: print(a) a -= 1 # 输出: 3 2 1
循环条件为a>=1,因此当这个条件成立时就会继续循环,打印a。当a<1时就会中止循环。
固然,若是咱们想要中途终止循环也可使用break
和continue
语句。
while循环使用else
while循环和for循环同样,也可使用else语句,咱们一块儿来看一下:
a = 3 while a >= 1: print(a) a -= 1 else: print('循环结束 !') # 输出: 3 2 1 循环结束 !
无限循环
若是你想要循环永远执行,可让条件让真一直成立,好比说:
a = 1 while a == 1: print(a) else: print('循环结束 !') # 会一直循环打印1
break跳出循环
a = 0 while a < 10: print(a) a = a + 1 if a == 3: print("break跳出循环") break else: print('循环结束 !') # 输出: 0 1 2 break跳出循环
continue进去下一轮循环
for i in range(1, 11): if i % 2: continue print(i) # 输出 2 4 6 8 10
上面代码中使用了continue语句,if 条件语句的意思是若是i%2为真(不等于0)就进入下一轮循环。若是i%2为假(等于0)时会执行print(i)语句,打印i 。