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语句,否则不执行。

 

posted on 2019-07-02 16:38  一只萌萌哒的提莫  阅读(197)  评论(0编辑  收藏  举报