"(3)函数参数为世界卫生组织计算方法所需的成年人性别、身高、体重,返回值为判断结果, 具体代码类似于 work4 09. py。(4)在文件模块内部编写测试代码, 并在 work7 01. py中使
时间: 2024-12-13 10:24:13 浏览: 26
在Python编程中,如果你需要创建一个函数,用于根据世界卫生组织(WHO)的计算方法评估成年人是否处于健康体重范围内,给定性别、身高和体重作为输入参数,这个函数可能会类似下面的样子:
```python
def is_weight_healthy(gender, height_cm, weight_kg):
# WHO的健康体重计算公式或其他算法在这里
if gender == 'male':
bmr = 88.362 + (13.397 * weight_kg) + (4.799 * height_cm) - (5.677 * age)
elif gender == 'female':
bmr = 447.593 + (9.247 * weight_kg) + (3.098 * height_cm) - (4.330 * age)
else:
return "Invalid gender"
# 计算基础代谢率(BMR),然后根据WHO的标准判断是否健康
healthy_range = (bmr * 18 / 2000 for _ in range(2)) # 通常建议在BMR的50%至20%之间
return weight_kg >= min(healthy_range) and weight_kg <= max(healthy_range)
# 假设age是一个额外的变量,这里没有直接提供
```
在这个函数中,我们首先根据性别计算基础代谢率(BMR),然后根据WHO推荐的体重百分位范围来判断体重是否健康。
至于在`work701.py`中的测试代码示例,你可能会这样写:
```python
from work409 import is_weight_healthy # 引入刚刚定义的函数
def test_is_weight_healthy():
assert is_weight_healthy('male', 180, 80) == True # 测试男性健康体重
assert is_weight_healthy('female', 165, 60) == False # 测试女性超重
assert is_weight_healthy('invalid', 170, 75) == "Invalid gender" # 测试无效性别
if __name__ == "__main__":
test_is_weight_healthy()
print("All tests passed.")
阅读全文