首頁  >  文章  >  後端開發  >  python中的物件屬性如何存取?兩種方法實例解析

python中的物件屬性如何存取?兩種方法實例解析

乌拉乌拉~
乌拉乌拉~原創
2018-08-20 14:38:233870瀏覽

在這篇文章之中我們來了解一下關於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教學欄位。

以上是python中的物件屬性如何存取?兩種方法實例解析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn