質問: cr2.getGas() print("ナンバーは", n1, "ガソリンの量は", g1, "です。") print("ナンバーは", n2, "ガソリンの量は", g2, "です。") ``` **実行結果** ナンバーは1234 ガソリンの量は25.5です。 ナンバーは2345 ガソリンの量は30.5です。
回答: **【質問に対する直接の回答】** > > 返り値のreturnはそもそもどういう時に使うのですか? > > > 呼び出し側がメソッドに対して処理を依頼し、処理の結果を呼び出し側が受け取りたいときに使います。 > > どういう働きをして、プログラムの処理の流れはどういう風になっているのでしょうか? > > > 後述の【プログラムの処理の流れ】を参照してください。 メソッドを呼び出した側にreturnで指定した値が返ります。 具体例で説明すると (5)で呼び出したメソッド`getNumber`のreturnで返す値(self.num)が、呼び出し側の変数n1に代入されます。 **【プログラムの処理の流れ】** (数値)は文の実行順序です。 ``` class Car: def __init__(self, num, gas): (2)(12)self.num = num (3)(13)self.gas = gas def getNumber(self): (6)(16)return self.num def getGas(self): (9)(19)return self.gas (4)cr1 = (1)Car(1234, 25.5) (7)n1 = (5)cr1.getNumber() (10)g1 = (8)cr1.getGas() (14)cr2 = (11)Car(2345, 30.5) (17)n2 = (15)cr2.getNumber() (20)g2 = (18)cr2.getGas() (21)print("ナンバーは", n1, "ガソリンの量は", g1, "です。") (22)print("ナンバーは", n2, "ガソリンの量は", g2, "です。") ```