zoukankan      html  css  js  c++  java
  • Python_02-控制语句

    目录: 

    1         控制结构... 

    1.1      分支语句... 

    1.1.1   if语句的嵌套... 

    1.2      for循环... 

    1.2.1   Python 循环中的控制语句... 

    1.3      while循环语句... 

    1.3.1   举例... 

     

     

    1       控制结构

    Python支持三种不同的控制结构:ifforwhile,不支持C语言中的switch语句。

    1.1   分支语句

    格式:

           if EXPRESSION1:

                 STATEMENT1

           elif EXPRESSION2:

                  STATEMENT2

           else:

                STATEMENT3

    if    <条件> :

    <if块>

    else :

         <else 块>

    说明: <条件>不需加括号,例如a==b即可,但后面却有一个冒号是不可少的“:

    else后也有一个冒号“:”。

    <if块>、<else 块>要以缩进的格式书写,因为python中,缩进量相同的是同一块。这与C语言的一对大括号{}不同。

    if语句用来检验一个条件, 如果<条件>为真,我们运行一块语句(称为 if-), 否则 我们处理另外一块语句(称为 else-)。 else 从句是可选的。

    示例1

    score=int(input())

    if score<60:

        print("D")

    elif score<80:

        print("C")

    elif score<90:

        print("B")

    else:

    print("A")

    示例2

    # if elif else语句

    score = int(input("score:"))

    if(score >= 90) and (score <= 100):

        print ("A")

    elif(score >= 80) and (score < 90):

        print( "B")

    elif(score >= 60) and (score < 80):

        print ("C")

    else:

    print ("D")

    1.1.1   if语句的嵌套

    编写条件语句时,应该尽量避免使用嵌套语句。嵌套语句不便于阅读,而且可能会忽略一些可能性。

    例子:

    x = -1

    y = 99

    if(x >= 0):

        if(x > 0):          #嵌套的if语句

            y = 1

        else:

            y = 0

    else:

        y = -1

    print ("y =", y)

     

    如何实现类似switch语句功能:

    http://blog.csdn.net/lynn_yan/article/details/5464911

     

    1.2   for循环

    格式:

    for  <循环变量>  in  <序列>  :

       <循环体>

    示例1

    mylist = "for statement"

    for cc in mylist:

        print(cc)

    else: #最终执行

        print("End list")

    示例2:

    #!/usr/bin/python
     
    for letter in 'Python':     # First Example
       print 'Current Letter :', letter
     
    fruits = ['banana', 'apple',  'mango']
    for fruit in fruits:        # Second Example
       print 'Current fruit :', fruit
     
    print "Good bye!"

    1.2.1   通过序列索引迭代

    另外一种执行循环的遍历方式是通过索引,如下实例:

    #!/usr/bin/python

    fruits = ['banana', 'apple',  'mango']

    for index in range(len(fruits)):

       print ('Current fruit :', fruits[index])

    print( "Good bye!")

    以上实例输出结果:

    Current fruit : banana

    Current fruit : apple

    Current fruit : mango

    Good bye!

    以上实例我们使用了内置函数 len() range(),函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。

    函数range()是一个内置函数:生成某个范围内的数字列表。

    例如:

    range(1,6)就会生成[1,2,3,4,5]这样一个列表,

    range(8)会生成[0,1,2,3,4,5,6,7]这样一个列表。

    示例:

    for i in range(1,5,1):

    print(i)

    它在一序列的对象上递归,即逐一使用队列中的每个项目,对每个项目执行一次循环体。

    应用中常用的格式是

    for  <循环变量>  in  range(N1, N2, N3)  :

       <循环体>

    其中,N1表示起始值,N2表示终止值,N3表示步长。<循环变量>依次取从N1开始,间隔N3,到N2-1终止的数值,执行<循环体>

    当然可以有嵌套循环,比如说有一个列表list=['China','England','America'],要遍历输出每个字母。

    实现:

    list=['China','England','America']

    for i in range(len(list)):

        word=list[i]

        for j in range(len(word)):

            print (word[j] )

    例如:

    for i in range(1, 10,3):

        print(i)

    print ('The for loop is over' )

    结果为:

    C:Python31>python for.py

    1

    4

    7

    The for loop is over

    在这个程序中,打印了一个序列的数,而这个序列是使用内建的range函数生成的。例如,range(1,5)给出序列[1, 2, 3, 4]。默认地,range的步长为1。range(1,10,3)给出[1,4,7]。range 向上 延伸到第二个数,但不包含第二个数。

    for循环在这个范围内递归——for i in range(1,10,3)等价于for i in [1, 4, 7],这就如同把序列中的每个数(或对象)赋值给i,然后一次对每个i的值执行这个程序块。

    最后加一点,Python中的forwhile循环都可以加else子句else子句在整个循环执行条件不符合时执行(这种用法现在一般用得比较少了)。

    #这两段循环功能完全相同

     

    count=5

    while count>0:

        print ('i love python')

        count=count-1

    else:

        print ('over')

       

    count=5

    while count>0:

        print ('i love python')

        count=count-1

    print ('over')

     

    1.2.2   Python 循环中的控制语句

    break

    break语句与C语言中的一样,跳出最近的forwhile循环。

    continue

    continue语句同样是从 C 语言借用的, 它终止当前迭代而进行循环的下一次迭代。

    pass

    pass语句什么都不做,它只在语法上需要一条语句但程序不需要任何操作时使用。pass语句是为了保持程序结构的完整性。

    else子句

    在循环语句中还可以使用else子句,else子句在序列遍历结束(for语句)或循环条件为假(while语句)时执行,但循环被break终止时不执行。如下所示:

    例子:

    # 循环结束执行else子句

    for i in range(2, 11):

        print(i)

    else:

        print('for statement is over.')

     

    # 被break终止时不会执行else子句

    for i in range(5):

        if(i == 4):

            break;

        else:

            print(i)

    else:

        print('for statement is over') # 不会输出

     

    1.3   while循环语句

           while  <条件>:

                  <循环体>

    注意,<条件>后有一个冒号,<循环体>要使用缩进的格式。while语句的功能是党<条件>成立(为真)时,执行循环体,然后再次检验<条件>,如果成立,再次执行循环体,直到<条件>不再成立,然后执行后面的程序。

    1.3.1   举例

    a = 0

    while a < 5:

        a = a + 1

        print (a)

    else:

        print ("a's value is five")

    例子:

    count=5

    while count>0:

        count=count-1

        if count==3:

            continue

        print ("i love python!" )

    >>>

    i love python!

    i love python!

    i love python!

    i love python!

     

  • 相关阅读:
    Binary Tree Zigzag Level Order Traversal
    Binary Tree Level Order Traversal
    Symmetric Tree
    Best Time to Buy and Sell Stock II
    Best Time to Buy and Sell Stock
    Triangle
    Populating Next Right Pointers in Each Node II
    Pascal's Triangle II
    Pascal's Triangle
    Populating Next Right Pointers in Each Node
  • 原文地址:https://www.cnblogs.com/jiu0821/p/4455134.html
Copyright © 2011-2022 走看看