Pythonでは、関数からオブジェクトを返すことが可能です。これは、関数が計算した結果を他の部分で再利用するために非常に有用です。以下に具体的な方法を示します。
まず、関数内でオブジェクトを作成します。このオブジェクトは、関数が計算した結果を保持するためのものです。例えば、以下のようなコードを考えてみましょう。
class Order:
def __init__(self, number, amount):
self.number = number
self.amount = amount
def __str__(self):
return f'Order #{self.number}: amount = {self.amount}'
@property
def order_number(self):
return self.number
def cancel(self):
self.amount = 0
print('Order is cancelled.')
print(self)
class PizzaHut:
def __init__(self, price):
self.price = price
def order(self):
return Order(42, self.price)
pizza = PizzaHut(4.99)
order = pizza.order()
print(order.order_number)
order.cancel()
このコードでは、PizzaHut
クラスのorder
メソッドがOrder
オブジェクトを返しています。このオブジェクトは、注文番号や金額などの情報を保持しています。
このように、Pythonでは関数からオブジェクトを返すことで、そのオブジェクトのメソッドや属性を他の部分で再利用することが可能になります。これは、コードの再利用性を高め、プログラムの複雑さを管理するのに役立ちます。