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!

     

  • 相关阅读:
    C# winform 学习(一)
    C# winform 学习(一)
    C# winform 学习(二)
    C# winform 学习(二)
    C# Winform 学习(四)
    C# Winform 学习(四)
    C# winform 学习(三)
    gcc编译动态和静态链接库
    对深拷贝与浅拷贝的再次理解(默认构造函数是浅拷贝)
    QWaitCondition(和Java的Notify机制非常相像)
  • 原文地址:https://www.cnblogs.com/jiu0821/p/4455134.html
Copyright © 2011-2022 走看看