美文网首页百人计划
Python创建类、构造函数和析构函数、创建实例对象(学习笔记)

Python创建类、构造函数和析构函数、创建实例对象(学习笔记)

作者: 霞姐时间管理 | 来源:发表于2017-09-13 20:31 被阅读1062次

一、Python类定义

类是用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。

二、Python创建类

使用class语句来创建一个新类,class之后为类的名称并以冒号结尾,类的组成包括成员变量和成员函数。

注意:python2.2后继承object的目的是使这个类成为new style class,没有继承object的为传统的classic class。

示例:

class user(object):#一般都写成继承object

"user information "

name='emma'

age='18'

def who(self):

print 'My name is '+self.name +".I'm"+str(self.age)+'years old.'
注:

1)类中的成员函数必须跟参数self。
2)成员函数调用成员变量时也要加上self。

三、Python构造函数和析构函数

1.__init__()方法是一种特殊的方法,被称为类的构造函数或初始化方法,当创建了这个类的实例时就会调用该方法。
2.__del__ (),被称为类的析构函数,__del__()在对象消逝的时候被调用,当对象不再被使用时,__del__()方法运行。
示例:

class user(object):
"user information"
count=0
def __init__(self,name,age):
self.name=name
self.age=age
user.count+=1
def who(self):
print 'My name is '+self.name +".I'm"+str(self.age)+'years old.'
def __del__(self):
class_name=self.__class__.__name__
print class_name,"destroyed"

注:一定要注意缩进,否则会报错。

四、Python创建实例对象

1.要创建一个类的实例,可以使用类的名称,并通过__init__方法接受参数
2.可以使用点(.)来访问对象的属性
3.类的类的文档字符串可以通过ClassName.__doc__查看
示例:

class user(object):
"user information" #文档注释信息
count=0
def __init__(self,name,age):
self.name=name
self.age=age
user.count+=1
def who(self):
print 'My name is '+self.name +".I'm " + str(self.age) + ' years old.'
def __del__(self):
class_name=self.__class__.__name__
print class_name,"destroyed"
u1=user('emma',18) #创建示例对象u1,类名后面传参,构造方法被调用
u1.who() #调用类中的成员函数
printu1.count #调用类中的成员变量
u2=user('emma123',20)
u2.who()
printu2.count
print
user.__doc__ #查看类文档的信息

运行结果:

注意:

1)打印字符串时需注意加空格隔开,如' years old.'引号里面第一个字符为空格。
2)__init__()前后都是两个下划线,如写成一个会报错:TypeError: object() takes no parameters
=》def_init_应该改为def__init__,其他同理。

相关文章

  • C++

    1.用类创建对象 对象是类的实例类的定义: 对象的定义: 类中特殊的两种函数:构造函数constructor,析构...

  • Python创建类、构造函数和析构函数、创建实例对象(学习笔记)

    一、Python类定义 类是用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。...

  • 对象特性

    构造函数和析构函数 构造函数:创建对象时为对象的成员属性赋值 没有返回值也不写void 可以有参数,可以重载 析构...

  • 简介python中的析构函数与构造函数

    python的构造和析构函数为固定的名字。 构造函数 析构函数 不像c++中那样构造函数和析构函数是类名字。并且在...

  • C++中的构造函数 & 拷贝构造函数 & 赋值运算符重载

    C++中的构造函数 & 析构函数 什么是构造函数?   一种特殊的方法, 在创建实例的时候初始化对象; 构造函数没...

  • Python:重载构造方法

    对于使用过C++的人来说,构造函数与析构函数不会陌生。构造函数在对象创建时被调用,析构函数在对象被销毁时被调用。而...

  • C++ 类

    构造函数&析构函数 构造函数在每次创建类的新对象时执行,为某些成员变量设置初始值。 构造函数的名称与类的名称是完全...

  • python中的类

    __init__(): 类的构造函数,当创建了该类的实例时就会调用该方法 __del__(): 类的析构函数,在对...

  • [C++之旅] 13 析构函数

    [C++之旅] 13 析构函数 析构函数与构造函数相反,构造函数在实例化一个对象时调用,而析构函数在销毁一个对象时...

  • Cpp2 构造函数和析构函数

    Cpp2 构造函数和析构函数 什么是构造函数 总结特点: 与类名同名/没有返回值 创建对象的时候执行/主要用于初始...

网友评论

    本文标题:Python创建类、构造函数和析构函数、创建实例对象(学习笔记)

    本文链接:https://www.haomeiwen.com/subject/csvlsxtx.html