Python Klasser og Objekter
- Forrige Side Python Array
- Næste Side Python Arv
Python 类/对象
Python 是一种面向对象的编程语言。
Python 中的几乎所有东西都是对象,拥有属性和方法。
类(Class)类似对象构造函数,或者是用于创建对象的“蓝图”。
创建对象
现在我们可以使用名为 myClass 的类来创建对象:
Eksempel
创建一个名为 p1 的对象,并打印 x 的值:
p1 = MyClass() print(p1.x)
__init__() 函数
上面的例子是最简单形式的类和对象,在实际应用程序中并不真正有用。
要理解类的含义,我们必须先了解内置的 __init__()
函数。
所有类都有一个名为 __init__() 的函数,它始终在启动类时执行。
使用 __init__() 函数将值赋给对象属性,或者在创建对象时需要执行的其他操作:
Eksempel
创建名为 Person 的类,使用 __init__() 函数为 name 和 age 赋值:
class Person: def __init__(self, name, age): self.name = name self.age = age p1 = Person("Bill", 63) print(p1.name) print(p1.age)
注释:每次使用类创建新对象时,都会自动调用 __init__() 函数。
对象方法
对象也可以包含方法。对象中的方法是属于该对象的函数。
让我们在 Person 类中创建方法:
Eksempel
插入一个打印问候语的函数,并在 p1 对象上执行它:
class Person: def __init__(self, name, age): self.name = name self.age = age def myfunc(self): print("Hello my name is " + self.name) p1 = Person("Bill", 63) p1.myfunc()
提示:self 参数是对类的当前实例的引用,用于访问属于该类的变量。
self parameter
self
Parameteren er en reference til den aktuelle instans af klassen, og bruges til at få adgang til variabler, der tilhører klassen.
Det behøver ikke at være navngivet self
, du kan kalde det, hvad du vil, men det skal være en funktion i klassen.Første parameter:
Eksempel
Brug ordet mysillyobject og abc i stedet for self:
class Person: def __init__(mysillyobject, name, age): mysillyobject.name = name mysillyobject.age = age def myfunc(abc): print("Hello mit navn er " + abc.name) p1 = Person("Bill", 63) p1.myfunc()
Ændr objektegenskab
Du kan ændre objektets egenskaber på denne måde:
Eksempel
Sæt p1 alderen til 40:
p1.age = 40
Slet objektegenskab
Du kan bruge del
Nøgleord til at slette objektets egenskab:
Eksempel
Slet p1 objektets age egenskab:
del p1.age
pass sætning
Klassedefinitioner kan ikke være tomme, men hvis du af en eller anden grund har skrevet en tom klassedefinitions sætning, skal du bruge pass-sætningen for at undgå fejl.
Eksempel
class Person: pass
- Forrige Side Python Array
- Næste Side Python Arv