首页 > 解决方案 > 自检代码

问题描述

我是编程新手,目前正在自学如何编码。老实说,我什至不知道这是否是发布此类问题的正确位置。

但是,我刚刚创建了一个 men_macro() 函数来计算男性卡路里。

def men_macro(height, weight, age, activity_level, gender='Male'):
''' Initializing the activity_level '''
active_level = {'Sedentary': 1.2,
                'Lightly Active': 1.375,
                'Moderately Active': 1.55,
                'Very Active': 1.725,
                'Extremely Active': 1.9}

# Creating men Macro Formula using Mifflin-St Jeor Equation
macro = ((10 * weight) + (6.25 * height) - (5 * age) + 5)

# Check if activity_level argument is in the active_level dictonary
for key, value in active_level.items():
    if activity_level == key:
        return macro * value

该功能有效,并且我的宏很好。

你们对代码有什么看法,只是想要你们的意见,还有什么我需要改进的地方。

标签: python-3.xfunction

解决方案


我认为 active_level 最好去掉函数——它独立于局部变量。我重做的最后一个块如下:

if activity_level in active_level:
    return macro*active_level[activity_level]

推荐阅读