python中的对象属性如何访问?两种方法实例解析
在这篇文章之中我们来了解一下关于python之中对象方面的知识,有些朋友可能是刚刚接触到python这一编程语言,对于python对象方面的了解比较少,不清楚关于python面向对象这一方面的知识。不清楚应该如何访问对象的属性。接下来的文章之中我们就来了解一下如何访问python对象的属性吧。
访问属性
您可以使用点号 . 来访问对象的属性。使用如下类的名称访问类变量:
emp1.displayEmployee()emp2.displayEmployee()print "Total Employee %d" % Employee.empCount
接下来我们来看一个完整的实例:
#!/usr/bin/python# -*- coding: UTF-8 -*- 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 "创建 Employee 类的第一个对象"emp1 = Employee("Zara", 2000)"创建 Employee 类的第二个对象"emp2 = Employee("Manni", 5000)emp1.displayEmployee()emp2.displayEmployee()print "Total Employee %d" % Employee.empCount
执行以上代码输出结果如下:
立即学习“Python免费学习笔记(深入)”;
Name : Zara ,Salary: 2000Name : Manni ,Salary: 5000Total Employee 2
你可以添加,删除,修改类的属性,如下所示:
emp1.age = 7 # 添加一个 'age' 属性emp1.age = 8 # 修改 'age' 属性del emp1.age # 删除 'age' 属性
你也可以使用以下函数的方式来访问属性:
1.getattr(obj, name[, default]) : 访问对象的属性。
2.hasattr(obj,name) : 检查是否存在一个属性。
3.setattr(obj,name,value) : 设置一个属性。如果属性不存在,会创建一个新属性。
4.delattr(obj, name) : 删除属性。
hasattr(emp1, 'age') # 如果存在 'age' 属性返回 True。getattr(emp1, 'age') # 返回 'age' 属性的值setattr(emp1, 'age', 8) # 添加属性 'age' 值为 8delattr(emp1, 'age') # 删除属性 'age'