什么是内置类属性
当创建一个类之后,系统就自带了一些属性,叫内置类属性。
常见的内置类属性
1、__dict____ : 类的属性(包含一个字典,由类的数据属性组成)
2、__doc____ : 类的文档字符串
3、__name____: 类名
4、__module____: 类定义所在的模块(类的全名是'__main____.className',如果类位于一个导入模块mymod中,那么className.__module____ 等于 mymod)
5、____bases____ : 类的所有父类构成元素(包含了一个由所有父类组成的元组)
class Employee:
'所有员工的基类'
empCount = 0
def __init__(self, name, salary):
self.name = name
self.salary = salary
Employee.empCount += 1
def displayCount(self):
print "Total Employee %d" % Employee.empCount
def displayEmployee(self):
print "Name : ", self.name, ", Salary: ", self.salary
print "Employee.__doc__:", Employee.__doc__
print "Employee.__name__:", Employee.__name__
print "Employee.__module__:", Employee.__module__
print "Employee.__bases__:", Employee.__bases__
print "Employee.__dict__:", Employee.__dict__
执行结果:
Employee.__doc__: 所有员工的基类 #一些关于类的描述
Employee.__name__: Employee #该类的名字
Employee.__module__: __main__ #该类写在哪个模块里,若自己没有新建,默认是__main__
Employee.__bases__: () #该类所继承的父类,若没有,收元组里为空
Employee.__dict__: #该类的一些属性和方法
{
'__module__' : '__main__',
'displayCount' : <function displayCount at 0x10a939c80>,
'empCount' : 0,
'displayEmployee' : <function displayEmployee at 0x10a93caa0>,
'__doc__' : '\xe6\x89\x80\xe6\x9c\x89\xe5\x91\x98\xe5\xb7\xa5\xe7\x9a\x84\xe5\x9f\xba\xe7\xb1\xbb',
'__init__' : <function __init__ at 0x10a939578>
}
网友评论