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