从零开始学Python-Day10-if、elif、else条件判断

Python零基础 木人张 3年前 (2020-03-17) 913次浏览 0个评论 扫描二维码
文章目录[隐藏]

计算机程序就是顺序向下一步步进行条件判断,执行不同指令。条件判断可以说是计算机程序的精髓所在。

条件判断

if列出条件,如果判断为True,就执行后面的指令,如果判断为False,不执行if后的指令,去执行else后面的指令,if条件和else后面都要加: 对应执行的命令记得缩进:

>>> 年龄 = 18
>>> if 年龄 >= 18:
	print('你的年龄是',年龄)
	print('成人')
else:
	print('你的年龄是',年龄)
	print('未成年人')

你的年龄是 18
成人
>>> 年龄 = 11
>>> if 年龄 >= 18:
	print('你的年龄是',年龄)
	print('成人')
else:
	print('你的年龄是',年龄)
	print('未成年人')

你的年龄是 11
未成年人

注意:因为是单纯的一个判断循环,我们直接在交互模式下就可以输入指令并执行。可以看出,上面对于年龄的判断其实还不是很细致,这时候我们需要elif语句来进一步细分年龄的划分:

>>> 年龄 = 5
>>> if 年龄 >= 18:
	print('你的年龄是',年龄)
	print('成人')
elif 年龄 >= 6:
	print('你的年龄是',年龄)
	print('青少年')
else:
	print('儿童')

儿童

通过上面的例子可以看出,程序是严格按照自上而下的顺序执行的,我们在编写if、elif、else的条件时一定要注意执行的顺序。在一个系列的判断中,elif可以有多个:

if <条件判断1>:
    <执行1>
elif <条件判断2>:
    <执行2>
elif <条件判断3>:
    <执行3>
else:
    <执行4>

if语句还可以直接判断一个量是否为空、是否为零,如:

>>> x = 1
>>> if x:
	print('True')
else:
	print('False')

True
>>> x =0
>>> if x:
	print('True')
else:
	print('False')

False
>>> x = ()
>>> if x:
	print('True')
else:
	print('False')

False

错误案例分析

看下面的案例,为什么会报错?

>>> 出生年份 = input('请输入您的出生年份')
请输入您的出生年份1985
>>> if birth < 2000:
    print('00前')
else:
    print('00后')

Traceback (most recent call last):
  File "<pyshell#51>", line 1, in <module>
    if 出生年份 < 2000:
TypeError: '<' not supported between instances of 'str' and 'int'

看报错信息:不能在str和int之间做<运算,这里因为input的内容默认为str字符串,一个字符串不能直接和整数数值做比较,我们需要把用户输入的字符串转换为整数数值,如下

>>> 出生年份 = input('请输入您的出生年份')
请输入您的出生年份1985
>>> s = int(出生年份)
>>> if s < 2000:
    print('00前')
else:
    print('00后')

00前

实例练习

请用户输入姓名、身高、体重,计算用户BMI指数(体重除以身高的平方),并根据该指数给出用户肥胖程度判断:
低于18.5:过轻
18.5-25:正常
25-28:过重
28-32:肥胖
高于32:严重肥胖

# -*- coding: UTF-8 -*-
# Filename : 肥胖程度.py
# author by : www.woodmanzhang.com
# 肥胖程度
name = input('请输入您的姓名:')
height = input('请输入您的身高(厘米):')
weight = input('请输入您的体重(公斤):')
h = int(height)
w = int(weight)
b = w/h**2
if b < 18.5:
	print(name,'您好,您的体重过轻')
elif b < 25:
	print(name,'您好,您的体重正常')
elif b < 28:
	print(name,'您好,您的体重过重')
elif b < 32:
	print(name,'您好,您的体重处于肥胖状态')
else:
	print(name,'您好,您的体重处于严重肥胖')

执行结果演示:

肥胖程度.py
请输入您的姓名:木人张
请输入您的身高(厘米):170
请输入您的体重(公斤):90
木人张 您好,您的体重过轻

木人张,版权所有丨如未注明 , 均为原创,禁止转载。
喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址