提供BMI值时,如何阻止BMI计算器添加不需要的“无”?

时间:2019-04-25 22:56:55

标签: python

我创建了一个BMI计算器,作为一个简单的初学者项目。一切正常,除了代码在额外的一行显示“无”的情况下输出了多余的不需要的文本。

代码如下:

def bmi_calculator(height, weight):
    bmi = weight / (height ** 2)
    print("Your bmi is:")
    print(bmi)
    if bmi > 25:
        print("You are overweight")
    else:
        print("You are healthy")

a = input("What is you're height in metres?")
height = int(a)
b = input("What is you're weight in kilograms?")
weight = int(b)

print(bmi_calculator(height, weight))

我希望输出为(例如):

Your bmi is:
60.0
You are overweight

但是实际输出是:

Your bmi is:
60.0
You are overweight
None

2 个答案:

答案 0 :(得分:2)

主程序中的print()应该是一个简单的函数调用。 Noneprint,它显示函数的返回值-但是您的函数没有具有返回值; None是默认设置。该功能可以完成所有需要的打印。

a = input("What is you're height in metres?")
height = int(a)
b = input("What is you're weight in kilograms?")
weight = int(b)

bmi_calculator(height, weight)

答案 1 :(得分:0)

发生这种情况是因为您正在打印函数bmi_calculator()返回的内容。在python中,如果没有显式返回,则所有函数都将返回None。