Python 类/对象

Python 是一种面向对象的编程语言。

Python 中几乎所有的东西都是一个对象,有它的属性和方法。

一个类就像一个对象构造器,或者一个用于创建对象的“蓝图”。

创建一个类

要创建一个类,请使用关键字class

例子

创建一个名为 MyClass 的类,并带有一个名为 x 的属性:

class MyClass:
  x = 5

创建对象

现在我们可以使用名为 MyClass 的类来创建对象:

例子

创建一个名为 p1 的对象,并打印 x 的值:

p1 = MyClass()
print(p1.x)
=====
5

__init__() 函数

上面的示例是最简单形式的类和对象,在现实生活中的应用程序中并没有真正的用处。

要理解类的含义,我们必须了解内置的 __init__() 函数。

所有类都有一个名为 __init__() 的函数,该函数总是在类启动时执行。

使用 __init__() 函数将值分配给对象属性或创建对象时必须执行的其他操作:

例子

创建一个名为 Person 的类,使用 __init__() 函数为 name 和 age 赋值:

class Person:
  def __init__(self, name, age):
    self.name = name
    self.age = age

p1 = Person("John", 36)

print(p1.name)
print(p1.age)

对象方法

对象也可以包含方法。对象中的方法是属于该对象的函数。

让我们在 Person 类中创建一个方法:

例子

插入一个打印问候语的函数,并在 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("John", 36)
p1.myfunc()

注意:参数self是对当前类实例的引用,用于访问属于该类的变量。

自我参数

参数是对当前类实例的self引用,用于访问属于该类的变量。

它不必命名self,你可以随意调用它,但它必须是类中任何函数的第一个参数:

例子

使用mysillyobjectabc代替self

class Person:
  def __init__(mysillyobject, name, age):
    mysillyobject.name = name
    mysillyobject.age = age

  def myfunc(abc):
    print("Hello my name is " + abc.name)

p1 = Person("John", 36)
p1.myfunc()

修改对象属性

您可以像这样修改对象的属性:

例子

将 p1 的年龄设置为 40:

p1.age = 40

删除对象属性

您可以使用 del关键字删除对象的属性:

例子

从 p1 对象中删除 age 属性:

del p1.age

删除对象

您可以使用del关键字删除对象:

例子

删除 p1 对象:

del p1

通行证声明

class定义不能为空,但如果您出于某种原因有一个class没有内容的定义,请放入pass语句以避免出错。

例子

class Person:
  pass

多继承

 

 

 object是所有类的一个顶类、基类,可加可不加;这是python3新加上的,加上这个叫做新式类;不写就是经典类,python3都是默认继承的,没有差别。

加上object继承的方法多一些。

posted on 2022-03-28 12:03  -G  阅读(93)  评论(0)    收藏  举报

导航