首页 > 编程语言 >python学习_分支结构(if...else...)

python学习_分支结构(if...else...)

时间:2023-07-14 12:11:18浏览次数:31  
标签:... python else 条件 print 执行 表达式 结构

一、程序的组织结构

1996年,计算机科学家证明了这样一个事实:任何简单或者复杂的算法都可以由顺序结构、选择结构和循环结构这三种基本结构组合而成

 1)顺序结构

程序从上到下顺序地执行代码,中间没有任何的判断和跳转,直到程序结束就叫顺序结构

例如:把大象装冰箱一共分几步?

print("-------程序开始---------")
print("第一步:打开冰箱门")
print("第二步:把大象放冰箱里")
print("第三步:把冰箱门关上")
print("--------程序结束---------")

2)选择结构(也叫分支结构)

程序根据条件表达式的结果选择性的执行部分代码,明确的让计算机知道在什么条件下,该去做什么,这个就是分支结构,分支结构又分为:单分支结构、双分支结构、多分支结构

  • 单分支结构:判断一个条件,如果这个条件成立,就执行其包含的某条语句或某个代码块

语法结构如下:

if 条件表达式:
    条件执行体


#单分支选择结构
例子1:
if 3<5: print('我在里面') print('我也在里面哈') print('我在外面') 例子2: money=1000 #余额 s=int(input("请输入取款金额:")) #取款金额存放在变量s中 #判断余额是否充足 if money>=s: money=money-s print("取款成功,余额为:",money)

这种结构的流程图如下:

  • 双分支结构(判断一个条件是否成立,如果条件成立,就执行其包含的某条语句或某个代码块;如果条件不成立,就执行另外的某条语句或某个代码块)

语法结构:

if 条件表达式:
    条件执行体1
else:
    条件执行体2

#双分支结构if...else,二选一执行
例子1:
if 3<5:
    print('3<5')
else:
    print('3不小于5')


例子2:
'''从键盘录入一个整数,编写程序让计算机判断是奇数还是偶数'''
num=int(input("请输入一个整数:"))
#条件判断
if num%2==0:
    print(num,"是偶数")
else:
    print(num,"是奇数")

双分支结构的流程图如下:

  • 多分支结构(判断多个条件,如果第一个条件不成立,则继续判断第二个条件,如果第二个条件不成立,则接着判断第三个条件......)

语法结构

if 条件表达式1:
    条件执行体1
elif 条件表达式2:
    条件执行体2
elif 条件表达式3:
    条件执行体3
...

eg:
score=77
if 0<score<60:
    print('D')
elif 60<score<80:
    print('C')
elif 80<score<90:
    print('B')
elif 90<score<100:
    print('A')
elif score==100:
    print('S')

另外多分支结构还有另外一个语法结构

if 条件表达式1:
    条件执行体1
elif 条件表达式2:
    条件执行体2
elif 条件表达式3:
    条件执行体3
else:
    条件执行体4


'''多分支结构,多选一执行
程序要求:从键盘录入一个整数,为学生成绩
90~100 A
80~89 B
70~79 C
60~69 D
0~59  E
小于0或者大于100  非法数据(不是成绩的有效范围)
'''

score=int(input("请输入成绩:"))
#判断
if score>=90 and score<=100:
    print("成绩为A")
elif score>=80 and score<90:
    print("成绩为B")
elif score>=70 and score<80:
    print("成绩为C")
elif score>=60 and score<70:
    print("成绩为D")
elif score>=0 and score<60:
    print("成绩为E")
else:
    print("成绩有误,不在成绩的有效范围")

多分支结构的流程图:

  • 嵌套if:就是if语句里面在嵌套if语句,建议最多不要超过3层嵌套

嵌套if的语法结构:

#嵌套if
if 条件表达式1:
    if 内层条件表达式:
        内层条件执行体1
    else:
        内层条件执行体2
else:
    条件执行体

'''if 嵌套
程序要求:
会员:购物金额>=200时打8折
     购物金额>=100时打9折
     购物金额<100时不打折
非会员:购物金额>=200时打9.5折
       购物金额<200时不打折
'''
answer=input("你是会员吗?")
money=float(input("请输入您的购物金额:"))
if answer=='y':        #会员
    if money>=200:
        print("打八折,付款金额为:",money*0.8)
    elif money>=100:
        print("打九折,付款金额为:",money*0.9)
    else:
        print("不打折,付款金额为:",money)
else:                  #非会员
    if money>=200:
        print("打9.5折,付款金额为:",money*0.95)
    else:
        print("不打折,付款金额为:",money)

嵌套if的流程图:

条件表达式:也叫if......else..的简写,就是将一个完整的if...else..结构整合成一个表达式来使用

语法结构:

#条件表达式
条件成立时执行的语句 if 条件表达式 else 条件不成立时执行的语句

'''程序要求:要求键盘录入两个整数,比较两个整数的大小'''
num1=int(input("请输入第一个整数:"))
num2=int(input("请输入第二个整数:"))
'''
print("--------常规判断写法---------")
if num1>=num2:
    print(num1,"大于等于",num2)
else:
    print(num1,"小于",num2)
'''

print("--------使用条件表达式来进行比较---------")
print(str(num1)+"大于等于"+str(num2) if num1>=num2 else str(num1)+"小于"+str(num2))

标签:...,python,else,条件,print,执行,表达式,结构
From: https://www.cnblogs.com/xnancy/p/17333795.html

相关文章

  • Python GUI框架
    问了一下newBing,常用的有这么几种:TkinterPyQtwxPythonKivyBeeware其中后两种的优点主要体现在跨平台上,一方面是我没这个需求,另一方面是别的框架也可以跨平台,所以先排除掉。Tkinter是Python内置的框架,容易上手一点,但是稍显简陋。PyQt很全面,但比较复杂。wxPython......
  • python用vscode编程关于类型注释引用后续类型的小技巧
    python的类型注释还是很方便的,相当于动态语言中增加类型系统,很方便支持代码自动补全.但是它毕竟不是编译型语言,如果引用的类型在后面定义,就会出现找不到此类型的提示.这时候只需要把这个类型当作字符串就可以了,不仅不会报错,仍然还会享受代码补全的好处.如下所示:c......
  • Python3+Django2实现后台管理系统入门
    Python3+Django2实现后台管理系统入门前言使用Django我们只需要做一些配置,就可以实现简单的后台管理系统,下面我们以新闻系统为例子来搭建后台。创建项目切换到工作空间,执行以下命令:django-admin.pystartprojectitstyle#进入itstyle文件夹cditstyle#创建newsApp......
  • python 装饰器
    目录装饰器应用场景装饰器#装饰器,反复的验证状态,从而判断是否继续下一步。经常用来判断用户的登陆状态。比如flask,他的很多东西都是装饰器#装饰器依赖闭包deftest():print('>>>text>>>')#类比a=10b=a,a=0是声明整数b=a是声明函数。defalex(t):print(......
  • python arrow在图上绘制箭头
    importmatplotlib.pyplotaspltdefdrawArrow(A,B):fig=plt.figure()ax=fig.add_subplot(111)"""箭头起始位置(A[0],A[1])和终点位置(B[0],B[1])length_includes_head=True:表示增加的长度包含箭头部分head_width:箭头的宽度head_length......
  • Emoing......
    你说星星会不会在人间放烟花的时候偷偷留下来见想见的人......夏天到了,祝你和想见的人早点见面巷子里的猫很自由却没有归宿,人生这道题怎么选都有遗憾可大家还是会爱,会坚持,会热烈,会拿真心换真心,在诸多风险里一次又一次选择相信。可是她不会…即使我不会是......
  • Python学习——Day 5
    循环结构·反复做同一件事情的情况,称为循环·循环结构的流程图·循环的分类   ·while   ·for-in·语法结构  while条件表达式:            条件执行体(循环体)a=1#判断条件表达式whilea<10:#执行条件执行体print(a)a+=1......
  • python基础day44
    表关系(外键)建立一张表:emp1.表不清晰,现在到底是员工不还是部门表2.字段需要重复地写,浪费资源3.兼容性很差,牵一发而动全身如何解决以上问题?我们的思路是把一张表拆分成两张表:emp和depart部门表拆分之后最大问题就是两张表没有了任何的关系外键:其实就是通过字段可以查......
  • Python 并发编程之协程(转载)
    Python并发编程之协程https://www.cnblogs.com/linhaifeng/articles/7429894.html引子本节的主题是基于单线程来实现并发,即只用一个主线程(很明显可利用的cpu只有一个)情况下实现并发,为此我们需要先回顾下并发的本质:切换+保存状态cpu正在运行一个任务,会在两种情况下切走去执......
  • python 生成器
    目录python生成器推导式示例python生成器推导式通过列表生成式(列表推导式),我们可以直接创建一个列表但是受到内存限制,列表容量是有限的而且创建一个100万元素的列表,会占用很大的存储空如果我们只需要访问前面几个元素,那后面大多数元素占用的空间就白白浪费了所以,如果列表......