(六) Python的条件判断和循环

来源:互联网 发布:网络课考古发现与探索 编辑:程序博客网 时间:2024/05/16 12:24

    就像C/C++语言一样,Python也有自己的条件判断语句,应该称程序代码块(block)更形象。代码块,顾名思义就是在一行或是放在一起的多行代码。它们是与程序的某个部分相关。Python中,我们使用的是 "缩进" 构成代码块。在IDLE中,最好设置是4个空格。

    1. if 语句

if 4 < 5:    #不要忘了加冒号    print "four is less than five! "

    根据Python的缩进规则,如果if语句判断是True,就执行print语句,否则,什么也不做。

    我们给if语句加上else,就是说if语句为False,if语句什么都不做,就给else执行了。

#Filename:if.pyage = int(raw_input("Enter a interage: "))if age >= 20:   print "you are adult!"elif age == 18:  print "you are teenage~"else:    print "you are kid!"print "Done"

    上面elifelse if的缩写,我们在if语句中能够写很多elif。但别忘了,elifelse从句都必须在其结尾处有一个冒号,后面跟着一个相应的语句块和正确的缩进。在Python中并没有switch语句,可以用 " if—elif—else "语句。  

if <条件判断1>:    <执行1>elif <条件判断2>:    <执行2>elif <条件判断3>:    <执行3>else:    <执行4>

  2.while语句

    while语句是在一个条件为真的情况下,允许重复执行一块语句。只要条件满足,就不断循环,条件不满足时退出循环。

#Filename:while.pysum = 0n = 0while n < 101:   sum = sum + n   n = n + 1print sum

   3.for循环

    for.....in循环是另一种循环语句,在一序列的对象上 递归, 即逐一使用队列中的每个项目。

#Filename:for.pyfor i in [1, 2, 3, 4, 5]:   print i>>> 12345

    我们都注意到,循环值在中括号内。此处的中括号是干什么用的呢?Python就是利用中括号以及数之间的逗号来建立列表(list),它就像是容器,用来存放数值。

    那么针对循环次数在100次,或是1000次的数值,我们该怎么键入数值呢?这就得看range()函数了,我们只要输入起始值和结束值,它就会帮助我们创建这两者之间的所有值。它会帮我们创建列表,包含了起始到结束的数值。

#Filename:for.pyfor i in range(1, 101):   print i, "* 5 =", i * 5 

  为什么我们显示出来的数据不包含101呢?因为range()函数提供一个数字列表,从给定的一个数开始,在给定的一个数之前结束。for i in range(1,101)相当于[1,2,3,....100],这就如同把序列中的每个数(或对象)赋值给i,一次一个,然后以每个i*5的值来执行程序块。

#Filename:for.pyfor i in range(100):   print i, "* 5 =", i * 5

     针对range()的简写,我们大多数都是从0开始,而不是从1开始。就像上述的range(101)会得到循环的100次迭代,但我们必须要记住的是,第一次循环时 i 等于0,而不是1。最后一次循环,i 等于99,而不是100。

    4. break和continue

     (1) break语句是用来 终止 循环语句的,即我们想完全跳出循环,或是放弃等待结束条件。   

#Filename:break.pyfor i in range(1, 6):    print 'i = ', i,    print 'Hello, how',    if i == 3:         break    print 'are you today?'

     输出:

>>> i =  1 Hello, how are you today?i =  2 Hello, how are you today?i =  3 Hello, how

    在这个程序中,我们取得用户的输入,然后打印这段句子。我们提供了一个特别的条件来停止程序,来检测输入的数值是不是等于3,终止 循环到达程序结尾来停止程序。


     (2)continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续 进行下一轮循环。 

#Filename:continue.pyfor i in range(1,6):    print      print 'i = ', i,    print 'Hello, how',    if i == 3:         continue    print 'are you today?'        

    输出:

>>> i =  1 Hello, how are you today?i =  2 Hello, how are you today?i =  3 Hello, howi =  4 Hello, how are you today?i =  5 Hello, how are you today?





0 0