Python有两个主要的循环结构,一个是while语句,属于通用循环;另一个是for语句,主要用于遍历序列对象内的元素。
while循环
while语句是Python语言中最通用的迭代结构。只要while的条件为真值,就会重复执行while语句块。直到条件变为假时,会跳出循环执行while块后面的语句。
while语句最完整的输写格式是:while表达式、一行或多行缩进语句的主体以及一个可选的else部分,else只有完全执行完才会执行,如果循环中有break语句中途跳出循环,else语句将不会被执行。
while condition:
statements
else:
statements2
一个无限循环的例子,由于while条件一直为True,Python会一直执行主体,或者直到你停止执行为止。这种行为通常也称为死循环。。
c=0
while True:
c+=1
print(str(c)+'次循环')
break ,continue的用法,下面的代码将打印一个三角形。
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
c=1
b=12
while c:
if(c%2==0): #c为偶数
c+=1
continue #跳到循环体开始处,
elif c>=b:
break #直接跳出循环体
print(' '*int((b-c)/2)+'*'*c) #打印空格和星号,这里的*乘号将重复打印字符
c+=1
else:
print('正常结束')
for循环
for循环在Python中是一个通用的序列迭代器,可用于遍历任何有序的序列对象内的元素。for语句可用于字符串、列表、元组、其他内置可迭代对象以及之后自定义的迭代器。
Python for循环的首行定义了一个赋值目标(或一些目标),以及你想遍历的对象。首行后面是你想重复的语句块,完整格式如下。
for target in sequence:
statements
if <test>:
break
if <test>:
continue
else:
statements
嵌套循环例子。
items = ["string",111,4,3.15]
keys = [4,3.14]
for key in keys:
for item in items:
if item == key:
print(key,"存在于items中")
break
else:
print(key,"不在items中")