Rumah  >  Artikel  >  pembangunan bahagian belakang  >  python中的对象属性如何访问?两种方法实例解析

python中的对象属性如何访问?两种方法实例解析

乌拉乌拉~
乌拉乌拉~asal
2018-08-20 14:38:233872semak imbas

在这篇文章之中我们来了解一下关于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

执行以上代码输出结果如下:

Name :  Zara ,Salary:  2000
Name :  Manni ,Salary:  5000
Total 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' 值为 8
delattr(emp1, 'age')    # 删除属性 'age'

以上就是本篇文章所讲述的所有内容,这篇文章主要介绍了python关于对象方面的知识。希望你能借助资料从而理解上述所说的内容以及所举的实例。希望我在这片文章所讲述的内容能够对你有所帮助,让你学习python更加轻松。

更多相关知识,请访问php中文网Python教程栏目。

Atas ialah kandungan terperinci python中的对象属性如何访问?两种方法实例解析. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn