py语言的流程控制理论

py语言的流程控制理论

流程控制就是指控制事物的发展流程。在python当中就是指按照一定的顺序步骤来实现py程序运行的功能。python当中主要的流程控制语句一般有:选择语句、循环语句、跳转语句、pass语句等等。

执行流程按程序结构进行分类包括:

  • 顺序结构:顾名思义,即按照程序代码左侧的阿拉伯数字,从上往下依次执行程序。
  • 分支结构:也可以说是选择判断的结构,即根据条件的不同,开始分支选择执行不同的流程。分支结构一般包括:if 分支、elif 分支、else 分支等等
  • 循环结构:即在一定条件下反复执行某一段程序,这个循环有开始和结束的条件标准。循环结构一般就是while循环结构
  • if 分支结构

即:if是一个逻辑判断条件,条件成立了执行的子代码。

age = 18
if age > 30:
    print('中年人')
  • if...else分支结构

即:if条件成立了执行a子代码;if条件不成立,else条件成立,然后执行b子代码。

age = 18
if age > 30:
    print('中年人')
else
    print'年轻人'
  • if...elif...else...分支结构

即:if条件成立了,执行if分支下的子代码;if条件不成立但elif条件成立了,就执行elif分支下的子代码;if条件和elif条件都不成立;执行else分支下的子代码。其中if分支、elif分支、else分支理论上可以有无数种。

username = input('username>>>:')
password = input('password>>>:')
if username == 'jason' and password == '123':
    print('登录成功')
else:
    print('账户和密码错误')
复制代码
score = input('请输入成绩>>>:')
if score > '90':
    print('成绩优秀')
elif score > '80':
    print('成绩良好')
elif score > '70':
    print('成绩一般')
elif score > '60':
    print('成绩及格')
else:
    print('成绩不合格')
复制代码

note:需要注意的是if的分支结构可以进行嵌套,即if分支下的一个子代码当中也可以存在if分支结构。

score = input('请输入成绩>>>:')
if score > '60':
    if score > '80':
        print('成绩优秀')
    else:
        print('成绩及格')
else:
    print('成绩不合格')
  • while循环结构

顾名思义,即:在while条件成立的条件下可以循环重复执行while循环结构下的子代码,直至不再满足循环执行的条件才能结束。

1.先判断条件是否成立 如果成立则执行循环体代码。
2.循环体代码执行完毕后 再次判断条件是否成立 如果成立则继续执行循环体代码,如果不成立则跳出循环。


sum = 0
n = 0
while n <= 100:
sum = sum + n
n += 1
print(sum)
执行结果: 1+2+...+100= 5050

 

  • while+break循环结构

break是用于直接结束本层循环,它只能结束break所在的那一层循环。

  • while+continue循环结构

continue是用于结束本次整个while循环,或开始下一次循环。note:直接跳到循环条件判断的地方开始运行程序,并进行下一次条件判断。

python编程语言当中的从属关系

  • python语言当中使用缩进来表示代码之间的从属关系,即子代码要在父代码的下面,并且一般进行缩进四个字符。
  • 并不是所有的代码都可以拥有子代码,条件判断的分支结构的代码是存在子代码的。
  • 如果多行代码属于同一个父代码,那么这多行代码需要保证相同的缩进。
  • 具有相同缩进量的代码彼此之间按照顺序结构执行,没有从属关系。
  • 如果一行代码的最后以冒号结尾,那么紧接着下一行代码必须进行缩进,这行代码就是上一行代码的子代码。冒号可以看成下一行代码是否是子代码的标志。

作业

编写一个猜年龄的游戏。
基本要求:
如果不对的情况下可以猜三次,如果对了,直接结束。
拔高练习:
三次机会用完之后,提示用户是否继续猜测,如果用户输入了y,则再给用户三次机会;如果用户输入n,则直接结束。

基础:

 

 

复制代码
number = 1
while number < 4:    # 循环语句,判断变量number的数值是否小于4,如果小于4就执行循环语句下面的子程序
    age = input('age>>>:')  # 请猜测此年龄
    if age == '20':    # if逻辑判断,校验是否为正确答案
        print('恭喜您,猜对了')    # 答案正确,输出(恭喜您,猜对了)
        break    # break即结束本行循环,即如果答案正确不再进行循环语句内子程序的运行,直接输出结果
    else:    # else逻辑判断,答案错误执行下面程序
        print('很遗憾,鼓励一下')    # 答案错误,打印输出(很遗憾,鼓励一下)
        number += 1    # 增量赋值,即变量number的值+1
    continue    # 变量number的数值如果不小于4,即循环语句结束循环运行,程序到此结束
复制代码

 

提高:

复制代码
number = 1  # 变量命名
while number < 4:  # 循环语句,判断变量number的数值是否小于4,如果小于4就执行循环语句下面的子程序
    age = input('age>>>:')  # 请猜测此年龄
    if age == '20':  # if逻辑判断,校验是否为正确答案
        print('恭喜您,猜对了')  # 答案正确,输出(恭喜您,猜对了)
        break  # break即结束本行循环,即如果答案正确不再进行循环语句内子程序的运行,直接输出结果
    else:  # else逻辑判断,答案错误执行下面程序
        print('很遗憾,鼓励一下')  # 答案错误,打印输出(很遗憾,鼓励一下)
        number += 1  # 增量赋值,即变量number的值+1
    continue  # 变量number的数值如果不小于4,即循环语句结束循环运行,程序到此结束
while number == 4:  # while逻辑判断,判断变量number是否等于4
    number_of_time = input('是否继续游戏>>>:')    # 获取是否重新开始游戏的数据信息
    if number_of_time == 'y':    # if条件判断是否选择重新游戏
        number1 = 1  # 进行新的一次变量命名,开始新的一次循环
        while number1 < 4:  # 循环语句,判断变量number1的数值是否小于4,如果小于4就执行循环语句下面的子程序
            age = input('age>>>:')  # 请猜测此年龄
            if age == '20':  # if逻辑判断,校验是否为正确答案
                print('恭喜您,猜对了')  # 答案正确,输出(恭喜您,猜对了)
                break  # break即结束本行循环,即如果答案正确不再进行循环语句内子程序的运行,直接输出结果
            else:  # else逻辑判断,答案错误执行下面程序
                print('很遗憾,鼓励一下')  # 答案错误,打印输出(很遗憾,鼓励一下)
                number1 += 1  # 增量赋值,即变量number1的值+1
        continue  # 变量number1的数值如果不小于4,即循环语句结束循环运行,程序到此结束
    elif number_of_time == 'n':  # elif的逻辑判断,获取到不再进行游戏的信息
        print('游戏结束,感谢参与')
复制代码

 

posted @   *sunflower*  阅读(247)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示