[英]My function have "return" and still getting "None" when I print
# look at my code below class User: def __init__(self,name, gender, age, hight, weight, activity): self.name = name self.gender = gender self.age = age self.hight = hight self.weight = weight self.activity = activity def __repr__(self): return f'Welcome back {self.name}' def get_name(self): return self.name def get_gender(self): return self.gender def get_age(self): return self.age def get_hight(self): return self.hight def get_weight(self): return self.weight def get_activity(self): return self.activity def set_age(self, new_age): self.age = new_age def set_weight(self, new_weight): self.weight = new_weight def set_activity(self, new_activity): self.activity = new_activity def daily_calories(self): if self.gender == 'men': bmr = int(((66 + (13.8 * self.weight)) + (5 * self.hight)) - (6.8 * self.age)) elif self.gender == 'women': bmr = int(((655 + (9.6 * self.weight)) + (1.8 * self.hight)) - (4.7 * self.age)) if int(self.activity) == 0: calories_out = int((1.2 * bmr) * 1.1) return print(f'\nHellow {self.name} Your body need {calories_out} calories per day') elif int(self.activity) == 1: calories_out = int((1.375 * bmr) * 1.1) return print(f'\nHellow {self.name} Your body need {calories_out} calories per day') elif int(self.activity) == 2: calories_out = int((1.55 * bmr) * 1.1) return print(f'\nHellow {self.name} Your body need {calories_out} calories per day') elif int(self.activity) == 3: calories_out = int((1.725 * bmr) * 1.1) return print(f'\nHellow {self.name} Your body need {calories_out} calories per day') else: calories_out = int((1.9 * bmr) * 1.1) return print(f'\nHellow {self.name} Your body need {calories_out} calories per day') user1 = User('User1', 'men', 41, 163, 66, 0) print(user1.daily_calories())
The print
function returns None
. print
function 返回None
。 You are returning that value.您正在返回该值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.