上一次和大家一起了解了python的条件语句,这一次我将和大家一起学习python的循环语句。
循环语句的特点是,在给定条件成立时,反复执行某程序段,直到条件不成立为止
01 for 语句
for循环的一般格式如下:
for in : else:
代码示例如下
languages = ["C", "C++", "Perl", "Python"] for x in languages: print (x)sites = ["Hello", "World"]for site in sites: if site == "World": print("YYY") break print("循环数据 " + site) else: print("没有循环数据!") print("完成循环!")
结果:
C C++ Perl Python >>> 循环数据 HelloYYY完成循环!>>>
02 while 循环
Python 中 while 语句的一般形式如下:
while 判断条件(condition): 执行语句(statements)
需要注意冒号和缩进。另外,在 Python 中没有 do..while 循环。
代码示例
#计算 1 到 100 的总和 n = 100 sum = 0 counter = 1 while counter <= n: sum = sum + counter counter += 1 print("1 到 %d 之和为: %d" % (n,sum))
结果:
1 到 100 之和为:5050>>>
Python中 while....else 语句的一般形式如下:
while : <语句1>else: <语句2>
代码示例
count = 0while count < 5: print (count, " 小于 5") count = count + 1else: print (count, " 大于或等于 5")
结果:
0 小于 51 小于 52 小于 53 小于 54 小于 55 大于或等于 5>>>
03
死循环
while不像for语句一样是遍历某一个对象的集合,在使用while时很容易出现的是条件表达式永远不为 false, 使得程序无限循环,实例如下:
var = 1while var == 1 : # 表达式永远为 true num = int(input("输入一个数字 :")) print ("你输入的数字是: ", num) print ("Good bye!")
var = 1
while var == 1 : # 表达式永远为 true
num = int(input("输入一个数字 :"))
print ("你输入的数字是: ", num)
print ("Good bye!")
结果:
输入一个数字:2你输入的数字是:2输入一个数字:3你输入的数字是:3输入一个数字:4你输入的数字是:4输入一个数字:
04 循环控制语句
循环控制语句也叫转跳语句,可以改变循环语句的执行顺序。python中最常用的是break语句,continue语句和pass语句。
break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。
continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。
Python pass是空语句,不做任何事情,一般用做占位语句。
while 中使用 break:
n = 5 while n > 0: n -= 1 if n == 2: break print(n) print('循环结束。')
n = 5
while n > 0:
n -= 1
if n == 2:
break
print(n)
print('循环结束。')
结果:
43循环结束
while 中使用 continue:
n = 5while n > 0: n -= 1 if n == 2: continue print(n)print('循环结束。')
n = 5
while n > 0:
n -= 1
if n == 2:
continue
print(n)
print('循环结束。')
结果:
4310循环结束>>>
for 中使用 pass:
for letter in 'Hello World': if letter == 'o': pass print ('执行 pass ') print ('当前字母 :', letter) print ("END")
for letter in 'Hello World':
if letter == 'o':
pass
print ('执行 pass ')
print ('当前字母 :', letter)
print ("END")
结果:
当前字母:H当前字母:e当前字母:l当前字母:l执行 pass当前字母:o当前字母:当前字母:W当前字母:o当前字母:r当前字母:l当前字母:dEND>>>