Add Python notes
This commit is contained in:
40
python/классы/class.py
Executable file
40
python/классы/class.py
Executable file
@@ -0,0 +1,40 @@
|
||||
class car:
|
||||
name = "None"
|
||||
weight = 1000
|
||||
speed = 200
|
||||
|
||||
#__init__ нужен, чтобы сразу задать объекту нужные параметры
|
||||
#Инициализация при создании
|
||||
def __init__(self, name, weight, speed):
|
||||
self.name = name
|
||||
self.weight = weight
|
||||
self.speed = speed
|
||||
print(f"{self.name} едет со скоростью {self.speed}")
|
||||
|
||||
#self необходим для того, Чтобы отличать методы от функций, которые не привязаны к какому-то классу/объекту,
|
||||
#поддерживать полиморфизм. Self - это что-то типа параметра метода.
|
||||
def set(self, name, weight, speed):
|
||||
self.name = name
|
||||
self.weight = weight
|
||||
self.speed = speed
|
||||
|
||||
#Класс наследник создаётся так:
|
||||
class truck(car):
|
||||
wheels = 8
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
|
||||
man = truck()
|
||||
man.wheels = 12
|
||||
print(man.wheels)
|
||||
#классы - наследники имеют доступ к методам из оригинального класса
|
||||
man.set(weight = 10000, name = "Man", speed = 200)
|
||||
|
||||
Audi = car("Audi", 2000, 320)
|
||||
Audi.set(weight = 2000, name = "Audi", speed = 320)
|
||||
print(Audi.name)
|
||||
|
||||
Shkoda = car("Shkoda", 1800, 235)
|
||||
Shkoda.set(weight = 1800, name = "Shkoda", speed = 235)
|
||||
print (Shkoda.name)
|
||||
Reference in New Issue
Block a user