如果必须为我的班级创建对象,如下所示,如何创建班级。
Obj1 = Class()
Obj2 = Class(para1,para2,para3)
这与我刚开始学习Python所需完成的任务有关。
[我尝试过构造重载,但似乎无法在Python中工作。谁能告诉我如何实现这一点,或者在一个代码中同时包含这两个行在技术上是错误的。
您可以做
class Class1:
def __init__(self, *args):
pass
obj1 = Class1()
obj2 = Class1(para1,para2,para3)
如果您设置默认值,例如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()))