如何在PYTHON里同时运用两个class
1、#比如我们现在有一个案例如下:
#有一辆货车,有车牌号,总体积,货物列表。
#然后每个货物有自己的名字和体积。
2、class Cargo:
def __init__ (self):
pass
#首先我们需要创建一个货物类,接着开始初始化这个货物类。
3、class Cargo:
def __init__ (self, name, volume):
self.name = name
self.volume = volume
#我们设置两个参数,需要输入货物名称和体积。
4、class Cargo:
def __init__ (self, name, volume):
self.name = name
self.volume = volume
def __str__ (self):
return "The volume of %s is %f." %(self.name, self.volume)
#这里设置一下货物返回的字符串。
5、class Cargo:
def __init__ (self, name, volume):
self.name = name
self.volume = volume
def __str__ (self):
return "The volume of %s is %.2f." %(self.name, self.volume)
chair = Cargo("chair", 3)
desk = Cargo("desk", 5)
computer = Cargo("computer", 1)
print(chair)
print(desk)
print(computer)
#这里我们让对象运用这个货物类,并且进行打印。
6、class Truck:
def __init__ (self, number, volume):
self.number = number
self.volume = volume
rest_volume = self.volume
cargo_list = []
#初始化货车类,接着设置一下属性。
7、class Truck:
def __init__ (self, number, volume):
self.number = number
self.volume = volume
rest_volume = self.volume
cargo_list = []
def __str__ (self):
return ("The licence of the truck is %s. And the rest of the volume is %.2f. We have the %s in this truck."
%(self.number,
rest_volume,
cargo_list))
#这里设置一下这个类要返回的字符串。
8、class Truck:
def __init__ (self, number, volume):
self.number = number
self.volume = volume
rest_volume = self.volume
cargo_list = []
def __str__ (self):
return ("The licence of the truck is %s. And the rest of the volume is %.2f. We have the %s in this truck."
%(self.number,
rest_volume,
cargo_list))
def add_cargo (self, cargo):
print("Add the %s" %cargo)
#这里设置一下方法,显示添加的货物。
9、class Truck:
def __init__ (self, number, volume):
self.number = number
self.volume = volume
rest_volume = self.volume
cargo_list = []
def __str__ (self):
return ("The licence of the truck is %s. And the rest of the volume is %.2f. We have the %s in this truck."
%(self.number, rest_volume, cargo_list))
def add_cargo (self, cargo):
print("Add the %s" %cargo)
truck_AAA = Truck("AAA", 15)
print(truck_AAA)
#这里出错了,是因为我们必须在剩余的面积和货物列表那里加上self.,因为要调用对象。
10、class Truck:
def __init__ (self, number, volume):
self.number = number
self.volume = volume
self.rest_volume = volume
self.cargo_list = []
def __str__ (self):
return ("The licence of the truck is %s.\nAnd the rest of the volume is %.2f.\nWe have the %s in this truck."
%(self.number, self.rest_volume, self.cargo_list))
def add_cargo (self, cargo):
print("Add the %s" %cargo)
truck_AAA = Truck("AAA", 15)
print(truck_AAA)
#这里设置火车对象,并且打印一下这个对象看看返回什么。
11、class Cargo:
def __init__ (self, name, volume):
self.name = name
self.volume = volume
def __str__ (self):
return "The volume of %s is %.2f." %(self.name, self.volume)
class Truck:
def __init__ (self, number, volume):
self.number = number
self.volume = volume
self.rest_volume = volume
self.cargo_list = []
def __str__ (self):
return ("The licence of the truck is %s.\nAnd the rest of the volume is %.2f.\nWe have the %s in this truck."
%(self.number, self.rest_volume, self.cargo_list))
def add_cargo (self, cargo):
print("Add %s" %cargo)
chair = Cargo("chair", 3)
desk = Cargo("desk", 5)
computer = Cargo("computer", 1)
print(chair)
print(desk)
print(computer)
truck_AAA = Truck("AAA", 15)
print(truck_AAA)
truck_AAA.add_cargo(desk)
#这里我们把对象桌子的返回字符串引入到货车对象的方法里面,并且返回字符串。
12、class Cargo:
def __init__ (self, name, volume):
self.name = name
self.volume = volume
def __str__ (self):
return "The volume of %s is %.2f." %(self.name, self.volume)
class Truck:
def __init__ (self, number, volume):
self.number = number
self.volume = volume
self.rest_volume = volume
self.cargo_list = []
def __str__ (self):
return ("The licence of the truck is %s.\nAnd the rest of the volume is %.2f.\nWe have the %s in this truck."
%(self.number, self.rest_volume, self.cargo_list))
def add_cargo (self, cargo):
print("Add %s" %cargo)
chair = Cargo("chair", 3)
desk = Cargo("desk", 5)
computer = Cargo("computer", 1)
print(chair)
print(desk)
print(computer)
truck_AAA = Truck("AAA", 15)
print(truck_AAA)
truck_AAA.add_cargo(chair)
truck_AAA.add_cargo(desk)
truck_AAA.add_cargo(computer)
#全部定义进去。
13、class Cargo:
def __init__ (self, name, volume):
self.name = name
self.volume = volume
def __str__ (self):
return "The volume of %s is %.2f." %(self.name, self.volume)
class Truck:
def __init__ (self, number, volume):
self.number = number
self.volume = volume
self.rest_volume = volume
self.cargo_list = []
def __str__ (self):
return ("The licence of the truck is %s.\nAnd the rest of the volume is %.2f.\nWe have the %s in this truck."
%(self.number, self.rest_volume, self.cargo_list))
def add_cargo (self, cargo):
self.cargo_list.append(cargo.name)
print("Add %s" %cargo.name)
print(self.cargo_list)
self.rest_volume -= cargo.volume
chair = Cargo("chair", 3)
desk = Cargo("desk", 5)
computer = Cargo("computer", 1)
print(chair)
print(desk)
print(computer)
truck_AAA = Truck("AAA", 15)
truck_AAA.add_cargo(chair)
truck_AAA.add_cargo(desk)
truck_AAA.add_cargo(computer)
print(truck_AAA)
#这个时候我们可以把货物添加入列表,并且让体积自动计算。在add_cargo方法里面务虽然参数是cargo,但是是可以指定输入对象的属性的,比如cargo.name和carogo.volume.。