python基础(14)之 类和对象

  • Post author:
  • Post category:python



目录


Python类和对象


一、创建类


二、创建对象


三、init() 函数


四、对象方法


五、自参数


六、对象及其属性更改


七、pass语句


Python类和对象

Python 类/对象。Python 是一种面向对象的编程语言。Python 中的几乎所有东西都是一个对象,有它的属性和方法。类就像一个对象构造函数,或者是创建对象的“蓝图”。



一、创建类

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

class




例如

:创建一个名为 MyClass 的类,其属性名为 x

class MyClass:
  x = 5
print(MyClass)



二、创建对象

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

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

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

返回:



三、

init

() 函数

上面的例子是最简单形式的类和对象,在现实生活应用程序中并没有真正有用。要理解类的含义,我们必须了解内置的

init

() 函数。所有类都有一个名为

init

() 的函数,它总是在类被初始化时执行。使用

init

() 函数为对象属性赋值,或在创建对象时需要执行的其他操作。

例如创建一个名为 Person 的类,使用

init

() 函数为 name 和 age 赋值:

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

p1 = Person("川川菜鸟", 20)

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

返回:



注意:

init

()每次使用该类创建新对象时都会自动调用该函数。



四、对象方法

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

例如插入一个打印问候语的函数,并在 p1 对象上执行它:

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

  def myfunc(self):
    print("我的名字是 " + self.name)

p1 = Person("笨洋洋", 20)
p1.myfunc()

返回:

​​​​​​​



五、自参数

self参数是对类当前实例的引用,用于访问属于该类的变量。它不必命名self,您可以随意调用它,但它必须是类中任何函数的第一个参数:

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

  def myfunc(abc):
    print("我的名字是 " + abc.name)

p1 = Person("笨洋洋", 20)
p1.myfunc()

跟使用self效果一样

​​​​​​​



六、对象及其属性更改


替换


例如修改年龄为21

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

  def myfunc(abc):
    print("我的名字是 " + abc.name)

p1 = Person("笨洋洋", 20)
p1.age = 21
print(p1.age)

返回:




删除对象属性


例如从 p1 对象中删除 age 属性:

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)
del p1.age
print(p1.age)#没有了自然打印报错


删除对象


比如删除对象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)

del p1

print(p1)#对象都不在了肯定报错



七、pass语句

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

class Person:
  pass



版权声明:本文为qq_25990967原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。