【21天python打卡】第18天 python经典案例(4)

简介: ​大家好,今天是21天python打卡第18天,今天我们继续说说python的经典案例。今天主要说了多条件语句的使用方法,以及举例异常处理的例子,通过bmi例子加深了我们对条件语句的使用技巧。

PM2.5空气质量提醒

随着科技的发展,我们越来越重视环境污染问题,担心PM2.5的指标。我们就编写一个 PM2.5空气质量提醒的程序。我们应不同的语句来实现它。


PM2.5空气质量提醒(1)

这个程序是最简单的,三个if语句,如果PM2.5在[0,35],则输出空气优质,快去户外运动!,如果PM2.5在[35,75],则输出空气良好,适度户外活动!,如果PM2.5大于75,则输出空气污染,请小心。


代码实现

PM = eval(input("请输入PM2.5数值: "))
if 0<= PM < 35:
    print("空气优质,快去户外运动!")
if 35 <= PM <75:
    print("空气良好,适度户外活动!")
if 75 <= PM:
    print("空气污染,请小心!")

实验结果

>>>30

空气优质,快去户外运动!

>>>50

空气良好,适度户外运动!

>>>80

空气污染,请小心


PM2.5空气质量提醒(2)

这个使用了if else语句,如果PM2.5大于75,输出空气存在污染,请小心,否则输出空气没有污染,可以开展户外运动!。


代码实现

PM = eval(input("请输入PM2.5 数值: "))
if PM >= 75:
    print("空气存在污染,请小心!")
else:
    print("空气没有污染,可以开展户外运动!")

实验结果

>>>80

空气存在污染,请小心!

>>>59

空气没有污染,可以开展户外运动!


PM2.5空气质量提醒(3)

这个使用了if elif else语句,本质上是和第一个是一样的,我们只要知道其含义就可以了。


代码实现

PM = eval(input("请输入PM2.5数值: "))
if 0<= PM < 35:
    print("空气优质,快去户外运动!")
elif 35 <= PM <75:
    print("空气良好,适度户外活动!")
else:
    print("空气污染,请小心!")

实验结果

>>>30

空气优质,快去户外运动!

>>>50

空气良好,适度户外运动!

>>>80

空气污染,请小心


身体质量指数BMI的计算

身体质量指数,是BMI(Body Mass Index )指数,简称体质指数,是国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。


计算公式为:BMI=体重÷(身高*身高)。(体重单位:千克;身高单位:米。)


我们知道其计算公式后就可以编写程序了。这两种方法都是使用了多个条件语句,实现不同的输出。我就不过多赘述。


身体质量指数BMI的计算(1)

代码实现

height, weight = eval(input("请输入身高(米)和体重(公斤)[逗号隔开]: "))
bmi = weight / pow(height, 2)
print("BMI 数值为:{:.2f}".format(bmi))
wto, dom = "", ""
if bmi < 18.5: # WTO 标准
  wto = "偏瘦"
elif bmi < 25: # 18.5 <= bmi < 25
  wto = "正常"
elif bmi < 30: # 25 <= bmi < 30
  wto = "偏胖"
else:
  wto = "肥胖"
if bmi < 18.5: # 我国卫生部标准
  dom = "偏瘦"
elif bmi < 24: # 18.5 <= bmi < 24
  dom = "正常"
elif bmi < 28: # 24 <= bmi < 28
  dom = "偏胖"
else:
  dom = "肥胖"
print("BMI 指标为:国际'{0}', 国内'{1}'".format(wto, dom))

实验结果

>>>15

偏瘦

>>>20

正常

>>>25

偏胖

>>>30

肥胖


身体质量指数BMI的计算(2)

代码实现

height, weight = eval(input("请输入身高(米)和体重\(公斤)[逗号隔开]: "))
bmi = weight / pow(height, 2)
print("BMI 数值为:{:.2f}".format(bmi))
wto, dom = "", ""
if bmi < 18.5:
    wto, dom = "偏瘦", "偏瘦"
elif 18.5 <= bmi < 24:
    wto, dom = "正常", "正常"
elif 24 <= bmi < 25:
    wto, dom = "正常", "偏胖"
elif 25 <= bmi < 28:
    wto, dom = "偏胖", "偏胖"
elif 28 <= bmi < 30:
    wto, dom = "偏胖", "肥胖"
else:
    wto, dom = "肥胖", "肥胖"
print("BMI 指标为:国际'{0}', 国内'{1}'".format(wto, dom))

实验结果

>>>18:

 "偏瘦", "偏瘦"

>>>20

"正常", "正常"

>>>24

"正常", "偏胖"

>>>25

"偏胖", "偏胖"

>>>28

"偏胖", "肥胖"

>>>30

"肥胖", "肥胖"


异常处理的小例子

我们会经常遇到输出异常,大部分都是我们输入不合法,然后程序就会报错,为了解决这种情况,我们通过会加这样的语句,try 语句。下面我们就通过三个具体的实例来看看是如何处理的。


异常处理的小例子(1)

代码实现


try:
    num = eval(input("请输入一个整数: "))
    print(num**2)
except NameError:
    print("输入错误,请输入一个整数!")

实验结果


99.png

异常处理的小例子(2)

代码实现

try:
    alp = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    idx = eval(input("请输入一个整数: "))
    print(alp[idx])
except NameError:
    print("输入错误,请输入一个整数!")  
except:
    print("其他错误")

实验结果

100.png

异常处理的小例子

代码实现

try:
    alp = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    idx = eval(input("请输入一个整数: "))
    print(alp[idx])
except NameError:
    print("输入错误,请输入一个整数!")
else:
    print("没有发生异常")
finally:
    print("程序执行完毕,不知道是否发生了异常")

实验结果

101.png


蒙特卡罗方法求解π值

《隋书律历志》留下一小段关于圆周率(π)的记载,祖冲之算出π的真值在3.1415926(朒数)和3.1415927(盈数)之间,相当于精确到小数第7位,成为当时世界上最先进的成就。这一纪录直到15世纪才由阿拉伯数学家卡西打破。


今天我们借助计算机来求π的大小。


代码实现

from random import random
from math import sqrt
from time import clock
DARTS = 1000
hits = 0.0
clock()
for i in range(1, DARTS+1):
    x, y = random(), random()
    dist = sqrt(x ** 2 + y ** 2)
    if dist <= 1.0:
        hits = hits + 1
pi = 4 * (hits/DARTS)
print("Pi值是{}.".format(pi))
print("运行时间是: {:5.5}s".format(clock()))

实验结果

Pi值是3.224.

这个误差还是比较大的。


今天就介绍到这里,下一篇我们继续分享python的经典案例。


相关文章
|
7天前
|
机器学习/深度学习 数据采集 数据可视化
跟着penguins案例学Seaborn之Pairplot
跟着penguins案例学Seaborn之Pairplot
14 1
|
7天前
|
Linux
跟着mpg案例学Seaborn之Jointplot
跟着mpg案例学Seaborn之Jointplot
17 1
|
7天前
|
数据可视化 Linux
跟着mpg案例学Seaborn之KDE
跟着mpg案例学Seaborn之KDE
13 1
|
7天前
|
数据挖掘
跟着mpg案例学Seaborn之Heatmap
跟着mpg案例学Seaborn之Heatmap
11 1
|
10天前
|
Unix Linux 网络安全
python中连接linux好用的模块paramiko(附带案例)
该文章详细介绍了如何使用Python的Paramiko模块来连接Linux服务器,包括安装配置及通过密码或密钥进行身份验证的示例。
13 1
|
7天前
|
数据可视化
跟着exercise案例学Seaborn之FacetGrid
跟着exercise案例学Seaborn之FacetGrid
11 0
|
7天前
|
数据可视化 数据挖掘
跟着mpg案例学Seaborn之Scatter
跟着mpg案例学Seaborn之Scatter
17 0
|
7天前
跟着Tips案例学Seaborn之Catplot
跟着Tips案例学Seaborn之Catplot
10 0
|
7天前
|
算法 Linux
跟着Iris案例学Seaborn之Histplot
跟着Iris案例学Seaborn之Histplot
14 0
|
7天前
|
数据可视化 Python
跟着Titanic案例学Seaborn之Countplot
跟着Titanic案例学Seaborn之Countplot
21 0
下一篇
无影云桌面