Python 定义一个函数后,如何求解其中一个参数?

Python 定义一个函数后,如何求解其中一个参数?,python,function,Python,Function,我对编程很陌生。我在20年8月14日写了我的第一段代码,所以我学习还不到一个月。我这样说是为了让你有耐心,如果我的代码不“漂亮”,我不知道我不知道什么。我已经建立了一个功能,这是一个体重指数计算器。计算BMI后,它会显示BMI编号和一条消息。如果有人被认为超重,我希望它也能为bmi_calc中的“lbs”变量求解。例如,我的目标是将第一个If语句中返回的字符串改为“你需要减去X磅才能达到理想的bmi”。lbs是我想要解算的。我试着用谷歌搜索,但我发现很难进行研究,因为我不知道如何简洁地描述我想要

我对编程很陌生。我在20年8月14日写了我的第一段代码,所以我学习还不到一个月。我这样说是为了让你有耐心,如果我的代码不“漂亮”,我不知道我不知道什么。我已经建立了一个功能,这是一个体重指数计算器。计算BMI后,它会显示BMI编号和一条消息。如果有人被认为超重,我希望它也能为bmi_calc中的“lbs”变量求解。例如,我的目标是将第一个If语句中返回的字符串改为“你需要减去X磅才能达到理想的bmi”。lbs是我想要解算的。我试着用谷歌搜索,但我发现很难进行研究,因为我不知道如何简洁地描述我想要创造的东西。我正在使用Python 3.8。感谢您的帮助

def bmi_calc(inches, lbs):
    kg=lbs*.453592
    meters=inches*.0254
    bmi=kg/meters**2
    round_bmi=round(bmi,2)
    if round_bmi>=30.0:
        return'Your BMI is'+' '+str(round_bmi)+'.'+' '+'This means you are obese. Consider a weight loss strategy.'
    elif 29.90 <=round_bmi >=25.0:
        return('Overweight')
    elif 24.9 <=round_bmi >=18.5:
        return('Healthy Weight')
    elif round_bmi<18.5:
        return('underweight')

print(bmi_calc(70,260))
def bmi_计算(英寸,磅):
千克=磅*.453592
米=英寸*.0254
体重指数=千克/米**2
圆形体质量指数=圆形体质量指数(bmi,2)
如果圆形体重指数>=30.0:
return'Your BMI is'+''+str(round_BMI)+'.+'+'这表示您肥胖。考虑减肥策略。
elif 29.90=25.0:
退货(“超重”)
elif 24.9=18.5:
返回(“健康体重”)

elif round_bmi虽然这更像是一个数学问题,而不是编程问题,但您可以通过这种方式将代数公式插入到代码中-

def bmi_calc(inches, lbs):
    ideal_bmi = 21.7
    kg=lbs*.453592
    meters=inches*.0254
    bmi=kg/meters**2
    round_bmi=round(bmi,2)

    ideal_weight = (ideal_bmi * (meters**2))/0.453592

    if round_bmi>=30.0:
        return'Your BMI is'+' '+str(round_bmi)+'.'+' '+'This means you are obese. you need to lose ' + str(lbs - ideal_weight) + ' lbs to reach the ideal weight'
    elif 29.90 >=round_bmi >=25.0:
        return('Overweight')
    elif 24.9 >=round_bmi >=18.5:
        return('Healthy Weight')
    elif round_bmi<18.5:
        return('underweight')

print(bmi_calc(70,260))
def bmi_计算(英寸,磅):
理想体重指数=21.7
千克=磅*.453592
米=英寸*.0254
体重指数=千克/米**2
圆形体质量指数=圆形体质量指数(bmi,2)
理想体重=(理想体重指数*(米**2))/0.453592
如果圆形体重指数>=30.0:
return'Your BMI is'+''+str(round_BMI)+'.+'+'这表示您肥胖。你需要减去“+str(lbs-理想体重)+”lbs才能达到理想体重”
elif 29.90>=round_bmi>=25.0:
退货(“超重”)
elif 24.9>=round_bmi>=18.5:
返回(“健康体重”)

elif round_BMI我知道数学,但是我应该把它包含在if语句中吗?你说的“解决”是什么意思?你不需要求解任何问题,你已经在变量lbs中有了lbs的值。你在函数的第一行使用它。如果你的问题是如何在给定bmi和身高(英寸)的情况下计算lbs,那么我们暂时忘记代码,把它写在纸上就行了。这是基础代数。然后编码公式/实际公式是简单的代数-求解给定BMI+英寸的lbs。这是您的选择,您可以将其放入代码中。。如果你想要一条信息显示“超重-减到X磅”,那么是的,它应该出现在if语句中。我想每个人都知道了。谢谢你的帮助。我想得太多了。我所要做的就是像每个人说的那样写出实际的数学,然后在分配给变量的函数中编程。然后我将该变量包含在字符串中。您的左侧比较器在边界检查中不正确。对于这种Python形式,您有:
如果上限>=x>=lower:
您的左侧比较器在边界检查中不正确。你有=对于这个python形式:
如果upper>=x>=lower:
@RufusVS我刚刚复制了提问者在他们的代码中的内容,并添加了请求的行,但是你是对的,他们的比较器不正确,我将编辑答案以使用正确的