私はPythonを初めて使用するので、単純なマクロ栄養素計算機を作成して練習しようとしています。特定の値をさまざまな関数に渡す方法がよくわかりません。
これが私のコードです
def Macro_input():
Percent_protein = input("Percentage of Protein: ")
float(Percent_protein)
Percent_carb = input("Percentage of Carbohydrates: ")
float(Percent_carb)
Percent_fat = input("Percentage of Fats: ")
float(Percent_fat)
Macro_dict = {'Protein': Percent_protein, 'Carbohydrate': Percent_carb, 'Fats': Percent_fat}
Macro_sum = Percent_protein + Percent_carb + Percent_fat
return Macro_sum
def Total_macro_check(Macro_sum):
#perhaps put all input into a dictionary? Macro['Protein':num, 'Carb':num, 'Fat':num]
if Macro_sum == 100:
print "You macronutrients percentages are \n Protein: "#, Macro_dict['Protein'], "%" #list for P/C/F --> %d
elif Macro_sum < 100:
print "Total percentages do not add up to 100. Please reenter percentages."
#go back to function that asks for Macros
elif Macro_sum > 100:
print "Total percentages surpass 100. Please reenter percentages."
#go back to function that asks for Macros
def main():
print "Please enter your macro-nutrients"
Total_macro_value = Macro_input()
Total_macro_check(Total_macro_value)
if __name__ == "__main__":
main()
辞書(Macro_dict)を出力する
ので、すべてのマクロの合計(Macro_sum
)が100の場合に出力できます。
ただし、100にMacro_sum
等しいかどうかも確認します。つまり、値を
出力する必要があります。Macro_sum
関数Total_macro_check
。
ただし、Macro_input
関数が戻っMacro_sum
てきたように感じますがMacro_dict
、 1つの値しか受け入れ ないのに、複数の値を返すため
、その出力を使用できません。Total_macro_check
Total_macro_check