Day 45複数の戻り値を返す関数
Pythonコード
1def get_user_info():2 name = '山田太郎'3 age = 254 return name, age5 6name, age = get_user_info()7print('名前:', name)8print('年齢:', age)9 10try:11 num1 = int(input('数字1を入力してください: '))12 num2 = int(input('数字2を入力してください: '))13 def add_and_multiply(a, b):14 add_result = a + b15 multiply_result = a * b16 return add_result, multiply_result17 add_result, multiply_result = add_and_multiply(num1, num2)18 print('加算結果:', add_result)19 print('乗算結果:', multiply_result)20except ValueError:21 print('入力が不正です。数字を入力してください。')
解説
- 行1〜4: 関数get_user_info()を定義します。この関数は、名前と年齢を返します。名前と年齢は、事前に定義された値です。return文で複数の値を返すことができます。int()関数は整数に変換しますが、この場合は不要です。
- 行6〜8: 関数get_user_info()を呼び出し、返された名前と年齢を変数nameとageに代入します。print()関数で名前と年齢を表示します。print()関数は、指定された値を出力します。
- 行10〜13: tryブロックで、ユーザーから2つの数字を入力してもらいます。input()関数で入力を受け付け、int()関数で入力された文字列を整数に変換します。int()関数は、入力された値が整数でない場合、ValueErrorを発生させます。
- 行14〜16: 関数add_and_multiply()を定義します。この関数は、2つの数字の加算結果と乗算結果を返します。return文で複数の値を返すことができます。
- 行17〜19: 関数add_and_multiply()を呼び出し、返された加算結果と乗算結果を変数add_resultとmultiply_resultに代入します。print()関数で加算結果と乗算結果を表示します。
- 行20〜21: exceptブロックで、入力が不正な場合にエラーを処理します。ValueErrorが発生した場合、入力が不正であることをユーザーに通知します。
次に試してみよう
- 関数で返される値の数を増やしてみましょう。
- 関数で返される値の型を変えてみましょう。例えば、リストや辞書を返すことができます。
- ユーザーから入力を受け付ける代わりに、ランダムな値を生成してみましょう。