zoukankan      html  css  js  c++  java
  • 7.2

    流程语句

      1.if判断语句

      在python中if语句可以依据判断的条件,决定执行哪个语句。其格式如下:

    if 条件:
        代码1
    else:
        代码2

      当满足条件1时,执行代码1,否则执行代码2。所以条件语句输出的值的数据类型是布尔型。

      其中else不能单独作为一串代码使用,需要配合if或者while循环语句来使用。当然,上述代码只能使用两个语句之间的抉择,如果没有执行if语句,那就会执行else语句,想反,如果执行了if语句,就不会执行else语句。

      当程序需要多个语句之间进行抉择时,需要if-elif-else语句来实现。下面用一个判断分数的算法进行举例:

    while 1:
        achievement=input("请输入你的成绩:")
        if int(achievement)>=90:
            print('优秀')
        elif int(achievement)>=80 and int(achievement)<90:
            print('良好')
        elif int(achievement)>=70 and int(achievement)<80:
            print('普通')
        else:
            print('很差')

      python使用换行缩进的方法分割代码,在同一缩进行的代码会被同步执行,

      2.while循环

      while循环的格式是:

    while 条件:
        代码

      当条件成立时,代码就会一直执行,直到条件不满足为止。所以在编写时避免死循环的出现。

      当循环没有达到但不需要再执行下去时,可以设置判断条件,使用break中断函数中断所包含的循环。

      当达到某一条件时需要跳过本次循环时,可以使用continue函数。

      如果不使用break函数时,也可定义标记变量flag,当满足判断条件时,将flag置反,在随后的代码快进行判断,如

    i=1
    while i<11:
        if i==4:
            i += 1
            continue
        else:
            print(i)
            i += 1

      如上函数中,输出了1-10的整数,当i为4时不给予输出,使用了continue函数。

      在while也能使用while-else语句,其设定是当while循环正常结束时,则执行else中的语句,否则不执行。如下

    i=1
    while i<11:
        print(i)
        i+=1
    else:
        print('结束')

      运行结果最后会输出结束,而使用break中途截断输出时,不会执行输出结束的语句,如:

    i = 1
    while i < 11:
        if i==4:
            i+=1
            break
        print(i)
        i += 1
    else:
        print('结束')

      3.for循环语句

      for循环与while循环中不同的是不依赖与索引取值,所以它的固定语法是

    for i in 容器列表
        代码1

      当开始循环时,i从容器中取值,赋予i中,所以在编程中进常使用range作为容器。

      当然,在python2和python3中range的定义有所不同,在python2中,range所指向的数据类型是list以列表的形式存在,而在3中就是range类型的,在2中这种类型有替代物wrange,其输出的类型也是wrange。

      (ps:对于各个容器,可以使用len()函数取其长度的值。)

      在使用range(1,4)中时要注意的时它是一个左闭右开的集合,即输出1-3的值。

      在字典中使用for循环对其打印时,打印的是其key值,如

    info={'name':'lzx','age':'18','sometime':'learn'}
    for i in info:
        print(i)

      运行结果为 name age sometime。可以看到i获取的值其实是字典里的key值。所以要想获得value还需使用info[i]打印。

      for也能与else联用,当for循环正常运行结束时,会执行最后的else语句,否则不执行。

  • 相关阅读:
    Ruby创始人谈Ruby的blocks和closure结构
    C语言字节对齐
    如今的开发者应了解哪些过去闻所未闻的新技能
    mongo下面总是缺少那么几个好用的工具试试这个吧MongoDB管理工具
    我们程序员为什么难晋升
    CMMI vs. Scrum vs. XP
    Rspec在Rails项目中的使用
    什么是Scrum?
    大型软件产品的敏捷案例 分享
    补充“为什么Scrum不行” (转自陈勇)
  • 原文地址:https://www.cnblogs.com/LZXlzmmddtm/p/11121550.html
Copyright © 2011-2022 走看看