Heim > Artikel > Backend-Entwicklung > Ein Beispiel-Tutorial zum Erstellen einer einfachen Klasse
Jede aus der Dog-Klasse erstellte Instanzspalte speichert den Namen und das Alter. Wir haben jedem Welpen die Fähigkeit gegeben, in die Hocke zu gehen (sit()) und zu rollen (roll_over()):
1 class Dog(): 2 """一次模拟小狗的简单尝试""" 3 def __init__(self, name, age): 4 """初始化属性name和age""" 5 self.name = name 6 self.age = age 7 def sit(self): 8 """模拟小狗被命令时蹲下""" 9 print(self.name.title() + "now is sitting.")10 def roll_over(self):11 """模拟小狗被命令时打滚"""12 print(self.name.title() + "rolled over!")13 my_dog = Dog('tom','3')14 print("my dog name is " + my_dog.name.title() )
class Dog():"""一次模拟小狗的简单尝试"""def __init__(self, name, age):"""初始化属性name和age"""self.name = name self.age = agedef sit(self):"""模拟小狗被命令时蹲下"""print(self.name.title() + " now is sitting.")def roll_over(self):"""模拟小狗被命令时打滚"""print(self.name.title() + " rolled over!") my_dog = Dog('tom',3)print(my_dog.name)print(my_dog.age)#运行结果tom3
class Dog():"""一次模拟小狗的简单尝试"""def __init__(self, name, age):"""初始化属性name和age"""self.name = name self.age = agedef sit(self):"""模拟小狗被命令时蹲下"""print(self.name.title() + " now is sitting.")def roll_over(self):"""模拟小狗被命令时打滚"""print(self.name.title() + " rolled over!") my_dog = Dog('tom',3) my_dog.sit() my_dog.roll_over()#运行结果Tom now is sitting. Tom rolled over!
Laut Hund Klasse Nach dem Erstellen einer Instanz können Sie die Punktnotation verwenden, um jede von Dog definierte Methode aufzurufen
class Dog():"""一次模拟小狗的简单尝试"""def __init__(self, name, age):"""初始化属性name和age"""self.name = name self.age = agedef sit(self):"""模拟小狗被命令时蹲下"""print(self.name.title() + " now is sitting.")def roll_over(self):"""模拟小狗被命令时打滚"""print(self.name.title() + " rolled over!") my_dog = Dog('tom',3) your_dog = Dog('Mei',2)print("My dog name is " + my_dog.name.title())print("Your dog name is " + your_dog.name.title())#运行结果My dog name is Tom Your dog name is Mei
Sie können je nach Bedarf beliebig viele Instanzen basierend auf der Klasse erstellen.
Eigenschaften Standardwerte zuweisen
class Car():"""一次模拟汽车的简单尝试"""def __init__(self, make, model, year):"""汽车的初始化"""self.make = make self.model = model self.year = year self.odometer_reading = 100def get_descri_name(self):"""描述汽车"""long_name = str(self.year) + ' ' + self.model + ' ' + self.makereturn long_name my_car = Car('audi', 'a4', '2017')print(my_car.model)print(my_car.get_descri_name())#运行结果a42017 a4 audi
Ändern Sie den Attributwert direkt
class Car():"""一次模拟汽车的简单尝试"""def __init__(self, make, model, year):"""汽车的初始化"""self.make = make self.model = model self.year = year self.odometer_reading = 100def get_descri_name(self):"""描述汽车"""long_name = str(self.year) + ' ' + self.model + ' ' + self.makereturn long_name my_car = Car('audi', 'a4', '2017')print(my_car.get_descri_name()) my_car.year = 2016print(my_car.get_descri_name())#运行结果2017 a4 audi2016 a4 audi
Ändern Sie ihn über Methoden
class Car():"""一次模拟汽车的简单尝试"""def __init__(self, make, model, year):"""汽车的初始化"""self.make = make self.model = model self.year = year self.odometer_reading = 100def get_descri_name(self):"""描述汽车"""long_name = str(self.year) + ' ' + self.model + ' ' + self.makereturn long_namedef update(self, mile):"""更新里程值"""if mile > self.odometer_reading: self.odometer_reading = mileelse:print("You can't roll back an odometer")def increment_odometer(self,mile):"""增加里程"""self.odometer_reading += miledef read_odometer(self):"""打印汽车的里程"""print("This car has " + str(self.odometer_reading) + " miles on it.") my_car = Car('audi', 'a4', '2017') my_car.read_odometer() my_car.odometer_reading = 10 #直接修改里程值my_car.update(200) #通过方法修改里程my_car.read_odometer() my_car.increment_odometer(10) my_car.read_odometer()#运行结果This car has 100 miles on it. This car has 200 miles on it. This car has 210 miles on it.
Wenn wir möchten, dass eine andere Klasse die Attribute einer anderen Klasse erbt, können wir das tun Fügen Sie den Namen der Klasse in Klammern hinzu, zum Beispiel:
class Car():"""一次模拟汽车的简单尝试"""def __init__(self, make, model, year):"""汽车的初始化"""self.make = make self.model = model self.year = year self.odometer_reading = 100def get_descri_name(self):"""描述汽车"""long_name = str(self.year) + ' ' + self.model + ' ' + self.makereturn long_namedef update(self, mile):"""更新里程值"""if mile > self.odometer_reading: self.odometer_reading = mileelse:print("You can't roll back an odometer")def increment_odometer(self,mile):"""增加里程"""self.odometer_reading += miledef read_odometer(self):"""打印汽车的里程"""print("This car has " + str(self.odometer_reading) + " miles on it.")class ElectricCar(Car):"""电动汽车的独特特性"""def __init__(self, make, model, year):"""初始化父类的属性"""super().__init__(make, model, year) my_tesla = ElectricCar('tesla', 'model s', '2016')print(my_tesla.get_descri_name())#运行结果2016 model s tesla
Um die Attribute der übergeordneten Klasse zu erben, muss auch eine spezielle Funktion super( ) um Python zu helfen Die Ehemannklasse und die Unterklasse sind verknüpft.
class Car():"""一次模拟汽车的简单尝试"""def __init__(self, make, model, year):"""汽车的初始化"""self.make = make self.model = model self.year = year self.odometer_reading = 100def get_descri_name(self):"""描述汽车"""long_name = str(self.year) + ' ' + self.model + ' ' + self.makereturn long_namedef update(self, mile):"""更新里程值"""if mile > self.odometer_reading: self.odometer_reading = mileelse:print("You can't roll back an odometer")def increment_odometer(self,mile):"""增加里程"""self.odometer_reading += miledef read_odometer(self):"""打印汽车的里程"""print("This car has " + str(self.odometer_reading) + " miles on it.")class Battery():"""一次模拟电动汽车"""def __init__(self,battery_size=70):"""初始化电瓶的属性"""self.battery_size = battery_sizedef describe_battery(self):"""打印一条描述电瓶容量的消息"""print("This car has a " + str(self.battery_size) + "-kwh battery.")class ElectricCar(Car):"""电动汽车的独特特性"""def __init__(self, make, model, year):"""初始化父类的属性"""super().__init__(make, model, year) self.battery = Battery() my_tesla = ElectricCar('tesla', 'model s', '2016')print(my_tesla.get_descri_name()) my_tesla.battery.describe_battery()#运行结果2016 model s tesla This car has a 70-kwh battery.
class Car():"""一次模拟汽车的简单尝试"""def __init__(self, make, model, year):"""汽车的初始化"""self.make = make self.model = model self.year = year self.odometer_reading = 100def get_descri_name(self):"""描述汽车"""long_name = str(self.year) + ' ' + self.model + ' ' + self.makereturn long_namedef update(self, mile):"""更新里程值"""if mile > self.odometer_reading: self.odometer_reading = mileelse:print("You can't roll back an odometer")def increment_odometer(self,mile):"""增加里程"""self.odometer_reading += miledef read_odometer(self):"""打印汽车的里程"""print("This car has " + str(self.odometer_reading) + " miles on it.")class Battery():"""一次模拟电动汽车"""def __init__(self,battery_size=70):"""初始化电瓶的属性"""self.battery_size = battery_sizedef describe_battery(self):"""打印一条描述电瓶容量的消息"""print("This car has a " + str(self.battery_size) + "-kwh battery.")class ElectricCar(Car):"""电动汽车的独特特性"""def __init__(self, make, model, year):"""初始化父类的属性"""super().__init__(make, model, year) self.battery = Battery()
from car import Car my_car = Car('audi', 'a4', '2017')
from car import Car,Battery,ElectricCar my_tesla = ElectricCar('tesla', 'model s', '2016')print(my_tesla.get_descri_name()) my_tesla.battery.describe_battery()
import car #导入整个模块的时候,需要使用句点表示法访问需要的类 my_tesla = car.ElectricCar('tesla', 'model s', '2016')print(my_tesla.battery)
from car import * #导入所有的类
Das obige ist der detaillierte Inhalt vonEin Beispiel-Tutorial zum Erstellen einer einfachen Klasse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!