那种电影网站怎么建设,制作灯笼的做法,要建立网站,有了自己的域名怎么做网站目录
1.创建和使用类
1.1根据类创建实例
2.使用类和实例
3.继承
3.1子类的继承方法__init__()
3.2给子类定义属性和方法
3.3重写父类方法
3.4将实例用例作属性
4.导入类 实例化#xff1a;根据类创建对象
1.创建和使用类
创建Dog类#xff0c;每个实例都存储名字和…目录
1.创建和使用类
1.1根据类创建实例
2.使用类和实例
3.继承
3.1子类的继承方法__init__()
3.2给子类定义属性和方法
3.3重写父类方法
3.4将实例用例作属性
4.导入类 实例化根据类创建对象
1.创建和使用类
创建Dog类每个实例都存储名字和年龄赋予了小狗蹲下sit()和打滚roll_over()能力 class Dog: def __init__(self,name,age): 初始化属性name,age self.name name self.age age def sit(self): 模拟小狗收到命令蹲下 print(f{self.name} is now sitting.) def roll_over(self): 模拟小狗收到命令打滚 print(f{self.name} rolled over!) 方法__init__这类的函数称为方法。 创建新实例的时候python会自动运行它 __init__(self)self一定要有自动传递 self.name name获取与形参name相关联的值并将其赋值给变量name,然后该变量被关联到当前创建的实例。
1.1根据类创建实例 class Dog:……my_dog Dog(Dylan,7)print(fMy dog name:{my_dog.name},age:{my_dog.age}.) My dog name:Dylan,age:7. 访问属性 访问my_dog的name属性my_dog.name 调用方法 my_dog.sit()my_dog.roll_over() Dylan is now sitting. Dylan rolled over! 创建多个实例 my_dog Dog(Dylan,7)your_dog Dog(Ann,6)
2.使用类和实例
创建Car类存储有关汽车的信息汇总这些信息 class Car: def __init__(self,make,model,year): self.make make self.model model self.year year def get_d_name(self): long_name f{self.year} {self.make} {self.model} return long_name.title()my_car Car(audi,a4,2024) #顺序不能变print(my_car.get_d_name()) 2024 Audi A4 给属性 指定默认值 class Car: def __init__(self,make,model,year): …… self.odo_reading 0 def read_odo(self): print(fmiles:{self.odo_reading}) my_car Car(audi,a4,2024)my_car.read_odo() 2024 Audi A4 miles:0 修改属性值 1.直接修改 my_car.odo_reading 45my_car.read_odo() miles:45 2.通过方法修改 def updata_od(self,mileage): #将里程数设置为指定值 self.odo_readingmileage my_car.updata_odo(34)my_car.read_odo() miles:34 def updata_od(self,mileage): # 将里程数设置为指定值 # 禁止将里程表读数往回调 if mileage self.odometer_reading: self.odometer_reading mileage else: print(You cant roll back an odometer.) 3.通过方法对属性的值进行递增 def increment_odo(self, miles): # 将里程数增加指定量 self.odometer_reading miles my_car.updata_odo(34_500)my_car.read_odo()my_car.increment_odo(100_000)my_car.read_odo() miles:34500 miles:134500
3.继承
如果要编写的类是另一个现实类的特殊版本可使用继承。
一个类继承另一个类时将自动获取另一个类的所有属性和方法。
父类原有类
子类新类
3.1子类的继承方法__init__() class FlectricCar(Car): #电动汽车的独特之处 def __init__(self,make,model,year): super().__init__(make,model,year) #初始化父类的属性my_byd FlectricCar(byd,plus,2024)print(my_byd.get_d_name())
3.2给子类定义属性和方法
一个类继承另一个类后可以添加区分子类和父类所需的新属性、新方法。 class FlectricCar(Car): #电动汽车的独特之处 def __init__(self,make,model,year): super().__init__(make,model,year) self.battery_size 75 def describe_battery(self): 打印电瓶容量的消息 print(fCar battert:{self.battery_size}-kWh) my_byd.describe_battery() Car battert:75-kWh
3.3重写父类方法
只要不符合子类模拟的实物的行为都可以重写。 如果用电动车的方式调动fill_gas_tank(), 会忽略Car中的方法fill_gas_tank() 运行右侧代码 class FlectricCar(Car):…… def fill_gas_tank(self): print(fCar doesnt need a gas rank.)
3.4将实例用例作属性
当类属性和方法清单太长的时候可以将类的一部分提取出来作为一个独立的类。
将大型类拆分成多个协同工作的小类。 原来 拆分后 class FlectricCar(Car): #电动汽车的独特之处 def __init__(self,make,model,year): super().__init__(make,model,year) self.battery_size 75 def describe_battery(self): 打印电瓶容量的消息 print(f{self.battery_size}-kWh) my_byd.describe_battery() class Battery: def __init__(self,battery_size75): self.battery_size battery_size def des_battery(self): print(f{self.battery_size}-kWh) class FlectricCar(Car): def __init__(self,make,model,year): super().__init__(make,model,year) self.battery Battery()print(my_byd.get_d_name())my_byd.battery.des_battery()
4.导入类 car.py class Car: …… class ElectricCar(Car):…… my_car.py调用car.py from car import Car 导入ElectricCar类 from car import ElectricCar 导入模块中所有类 from car import * 使用别名as from car import ElectricCar as EC