Python对象初始化,_init_方法

问题描述 投票:0回答:2

如果必须为我的班级创建对象,如下所示,如何创建班级。

Obj1 = Class()
Obj2 = Class(para1,para2,para3)

这与我刚开始学习Python所需完成的任务有关。

[我尝试过构造重载,但似乎无法在Python中工作。谁能告诉我如何实现这一点,或者在一个代码中同时包含这两个行在技术上是错误的。

python class oop object init
2个回答
0
投票

您可以做

class Class1:
    def __init__(self, *args):
        pass


obj1 = Class1()
obj2 = Class1(para1,para2,para3)

0
投票

如果您设置默认值,例如length = 80,则不必设置它们。但是,如果您设置这些值,则可以根据需要进行设置。以下代码几乎演示了您想要的内容。

class Rectangle:
   def __init__(self, length = 80, breadth = 60, unit_cost=100):
       self.length = length
       self.breadth = breadth
       self.unit_cost = unit_cost

   def get_perimeter(self):
       return 2 * (self.length + self.breadth)

   def get_area(self):
       return self.length * self.breadth

   def calculate_cost(self):
       area = self.get_area()
       return area * self.unit_cost
# breadth = 120 cm, length = 160 cm, 1 cm^2 = Rs 2000
r = Rectangle(160, 120, 2000)
print("Area of Rectangle: %s cm^2" % (r.get_area()))
print("Cost of rectangular field: Rs. %s " %(r.calculate_cost()))
© www.soinside.com 2019 - 2024. All rights reserved.