python定义BMI类
时间: 2024-11-09 15:13:05 浏览: 34
在Python中,我们可以创建一个名为`BMI`(Body Mass Index,身体质量指数)的类来表示一个人的体重和身高,并计算其BMI值。这是一个简单的示例:
```python
class BMI:
def __init__(self, weight_kg, height_m):
"""
初始化方法,设置体重和身高属性
:param weight_kg: 体重,单位为千克 (kg)
:param height_m: 身高,单位为米 (m)
"""
self.weight_kg = weight_kg
self.height_m = height_m
def calculate_bmi(self):
"""
计算BMI的方法
:return: 返回计算得到的BMI值
"""
bmi = self.weight_kg / (self.height_m ** 2)
return bmi
def get_status(self, bmi_thresholds):
"""
根据BMI值返回健康状况
:param bmi_thresholds: BMI分界点,例如{'underweight': 18.5, 'normal': 18.5 to 24.9, 'overweight': 25}
:return: 人的体型状态,如'偏瘦', '正常', '超重'
"""
bmi = self.calculate_bmi()
if bmi < bmi_thresholds['underweight']:
status = '偏瘦'
elif bmi_thresholds['underweight'] <= bmi < bmi_thresholds['normal']:
status = '正常'
else:
status = '超重'
return status
# 使用示例
bmi_calculator = BMI(70, 1.75) # 假设一个人体重70公斤,身高1.75米
bmi = bmi_calculator.calculate_bmi()
status = bmi_calculator.get_status({'underweight': 18.5, 'normal': 24.9, 'overweight': 25})
print(f"BMI: {bmi}, 健康状态: {status}")
```
在这个例子中,`BMI`类有初始化方法用于设置体重和身高,`calculate_bmi`方法用于计算BMI,以及`get_status`方法根据给定的阈值判断健康状况。
阅读全文