11-循环语句

while循环

python中while语句的一般形式:

while expression:
    statement(s)

需要注意的是:
在Python中没有do..while循环。

无限循环

如果条件从不变为FALSE,则循环变为无限循环。

var = 1
while var == 1:  # 表达式永远为 true
    num = int(input("输入一个数字  :"))
    print("你输入的数字是: ", num)

print("Good bye!")

执行结果:

输入一个数字  :9
你输入的数字是:  9
输入一个数字  :9
你输入的数字是:  9
输入一个数字  :9
你输入的数字是:  9
输入一个数字  :9
你输入的数字是:  9
输入一个数字  :

在while循环中使用else语句

如果else语句与while循环一起使用,则在条件变为false时执行else语句。

count = 0
while count < 5:
   print (count, " 小于 5")
   count = count + 1
else:
   print (count, " 大于或等于 5")

执行结果:

0  小于 5
1  小于 5
2  小于 5
3  小于 5
4  小于 5
5  大于或等于 5

语句组

如果while子句只包含一个语句,那么它可能被放在与while头相同的行上。

flag = 1

while (flag): print('hello,world!')

for循环

python中的for语句能够遍历任何序列的项目,基本语法:

for iterating_var in sequence:
    statements(s)

for循环中使用else语句

如果else语句与for循环一起使用,则只有在for循环正常终止(而不是遇到break语句)时才执行else块。
搜索列表中的偶数的用法:

numbers = [11,33,55,31,55,75,65,21,23,97,13]

for num in numbers:
    if num%2 == 0:
        print ('the list contains an even number')
        break
else:
    print ('the list doesnot contain even number')

执行结果:

the list doesnot contain even number

range()函数

内置的函数range()是对一系列数字进行迭代的函数。

for i in range(5):
    print(i)

你也可以使用range指定区间的值:

for i in range(5,9) :
    print(i)

也可以使range以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做'步长'):

for i in range(0, 10, 3):
    print(i)

还可以使用range()函数来创建一个列表:

L = list(range(5))
print(L) 

执行结果:

[0, 1, 2, 3, 4]

嵌套循环

for iterating_var in sequence:
    for iterating_var in sequence:
        statements(s)
    statements(s)
while expression:
    while expression:
        statement(s)
    statement(s)

以将任何类型的循环放在任何其他类型的循环中。 例如,for循环可以在while循环或for循环内,反之亦然。

循环控制语句

break

  • break语句用于提前终止当前循环。放弃循环后,直接执行循环块下一个语句。
  • break语句可以在while和for循环中使用。
  • 如果使用嵌套循环,则break语句将停止执行最内层循环,并在块之后开始执行代码的下一行。
for letter in 'Python':    
   if letter == 'h':
      break
   print ('Current Letter :', letter)

var = 10                  
while var > 0:              
   print ('Current variable value :', var)
   var = var -1
   if var == 5:
      break

print ("Good bye!")

执行结果:

Current Letter : P
Current Letter : y
Current Letter : t
Current variable value : 10
Current variable value : 9
Current variable value : 8
Current variable value : 7
Current variable value : 6
Good bye!

continue

  • continue语句将控制返回到当前循环的开头。当遇到continue语句时,循环将不执行当前迭代中剩余的语句,而直接下一次迭代开始。
  • continue语句可以在while和for循环中使用。
for letter in 'Python':
   if letter == 'h':
      continue
   print ('Current Letter :', letter)

var = 10
while var > 0:              
   print ('Current variable value :', var)
   var = var -1
   if var == 5:
        continue

print ("Good bye!")

执行结果:

Current Letter : P
Current Letter : y
Current Letter : t
Current Letter : o
Current Letter : n
Current variable value : 10
Current variable value : 9
Current variable value : 8
Current variable value : 7
Current variable value : 6
Current variable value : 5
Current variable value : 4
Current variable value : 3
Current variable value : 2
Current variable value : 1
Good bye!

pass

  • 当因为语法需要但不希望执行任何命令或代码时,则可以使用pass语句。
  • pass语句是一个空操作; 执行时没有任何反应。
  • pass语句对于代码最终会出现但现在不用写入,即存根的地方也很有用。
for letter in 'Python':
    if letter == 'h':
        pass
        print ('This is pass block')
    print ('Current Letter :', letter)

print ("Good bye!")

执行结果:

Current Letter : P
Current Letter : y
Current Letter : t
This is pass block
Current Letter : h
Current Letter : o
Current Letter : n
Good bye!
posted @ 2019-03-03 15:29  youngliu91  阅读(110)  评论(0编辑  收藏  举报