Python分支结构与循环结构

目录

在学习python层次结构(分支结构和循环结构)之前,我们先了解一下代码的层次。如果你有c/c++、lua等其他语言基础的话,应该知道c/c++是括号来表示代码层次的,而lua是由关键字then和end构成代码层次。但python不一样,它是以缩进的方式表示代码层次结构的,相同的缩进代表相同的代码层次结构。可以缩进任意数量空格,但是通常是4个空格,一般不使用tab键。

从上一篇文章中,我们所涉及到的python代码都是顺序执行的。然而只有顺序执行的代码并不能解决所有问题,比如我们输入密码有成功失败的,成功失败处理的流程是不一样的,所以我们要有分支结构。又比如1~100求和,这种类似重复的工作,我们并不想傻瓜似的做这样的工作,所以我们就会使用循环结构来做这样的重复的事情。


Python分支结构

条件语句

 条件语句就是判断某个条件是否成立,根据结果执行不同的操作。它主要有if语句、if-else语句和if-elif-else语句,if、else、elif是python的关键字。语法结构图如下:

 代码例子:

#百分制成绩转换为等级制成绩
grade = 'F'
score = float(input('请输入成绩: '))
if score >= 90:
    grade = 'A'
elif score >= 80:
    grade = 'B'
elif score >= 70:
    grade = 'C'
elif score >= 60:
    grade = 'D'
else:
    grade = 'E'

print('等级:', grade)

Python循环结构

1.for-in循环

明确知道循环执行次数或者对某个容器迭代,那么推荐使用for-in循环,使用方法:

for <循环变量> in <遍历结构>:
    <语句块>

for-in循环就是从遍历结构取出值放到循环变量中,然在在语句块中执行相应的逻辑处理,直到取完遍历结构中所有元素。遍历结构主要是range(m,n,k)、字符串、序列。遍历结构中的range的用法非常灵活,如:

range(n):产生0到n-1范围的整数
range(m, n):产生m到n-1范围的整数  注:n>m
range(m, n, k):产生m到n-1范围的整数,k是步长,即每次数值递增的值  注:n>m,k>0
range(m, n, -k):产生n+1到m范围的整数,k是步长,即每次数字递减的值  注:n<m,-k<0

2.while循环

我们不知道循环执行次数时,推荐使用while循环,主要是通过某个条件来判断循环结束,或者在循环中使用break跳出循环。语法图:

                                          在这里插入图片描述

 代码例子:

import random

answer = random.randint(1, 100)
counter = 0
while True:
   counter += 1
   number = int(input('input:'))
   if number < answer:
      print('small')
   elif number > answer:
      print('big')
   else:
      print('right!')
      break
    
print('game over!')

3.break continue pass和else

break关键字就是终止同层次的循环语句;

continue关键字就是跳过本次同层次的循环剩余语句,进入下一轮循环;

pass关键字是一个空语句,不做任何事情,只占语句位,是为了保持程序结构完整性。

else关键字是在判断循环中是否有遇到break。

下面重点说一下else,语法如下:

for <循环变量> in <遍历结构>:
    <语句块1>
else:
    <语句块2>

while <条件>:
    <语句块1>
else:
    <语句块2>

上面我们讲了Python分支结构与循环结构,大概都知道这两个结构的语法和使用,但有一点还要说明,python的中所有结构都可以相如深层嵌套,后面会看到很多这样的深层嵌套例子。

希望本文对大家有所帮助!  转载请注明

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Yi Ian

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值