上一次和大家一起了解了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>>>