Python基于property實現(xiàn)類的特性操作示例
本文實例講述了Python基于property實現(xiàn)類的特性操作。分享給大家供大家參考,具體如下:
Python中的特性是一個函數(shù),但是在使用的形式上看起來更像是一個屬性。針對一個對象來說,與屬性相比,特性是不能夠隨意添加的。而對象的屬性,默認情況下添加是十分簡單的。
下面通過代碼展示如何使用property實現(xiàn)特性:
# -*- coding:utf-8 -*-
#!python3
class MyClass:
def __init__(self,val1,val2):
self.val1 = val1
self.val2 = val2
@property
def Sum(self):
return self.val1 + self.val2
obj =MyClass(34,45)
print(obj.Sum)
程序的執(zhí)行結(jié)果如下:
79
從上面的結(jié)果來看,特性在調(diào)用的時候跟屬性是差不多的。如果通過類似方法的調(diào)用則會報錯,下面修改代碼如下:
# -*- coding:utf-8 -*-
#!python3
class MyClass:
def __init__(self,val1,val2):
self.val1 = val1
self.val2 = val2
@property
def Sum(self):
return self.val1 + self.val2
obj =MyClass(34,45)
print(obj.Sum)
# wrong way tocall the Sum property
print(obj.Sum())
程序執(zhí)行結(jié)果如下:
79
Traceback (most recent call last):
File "C:\py3\jb51PyDemo\src\Demo\propertyDemo.py", line 13, in <module>
print(obj.Sum())
TypeError: 'int' object is not callable
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python面向?qū)ο蟪绦蛟O計入門與進階教程》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python編碼操作技巧總結(jié)》及《Python入門與進階經(jīng)典教程》
希望本文所述對大家Python程序設計有所幫助。
- 解決python寫入mysql中datetime類型遇到的問題
- Python 類的特殊成員解析
- Python把csv數(shù)據(jù)寫入list和字典類型的變量腳本方法
- python 基本數(shù)據(jù)類型占用內(nèi)存空間大小的實例
- Python DataFrame設置/更改列表字段/元素類型的方法
- Python3實現(xiàn)的Mysql數(shù)據(jù)庫操作封裝類
- Python面向?qū)ο箢惱^承和組合實例分析
- Python帶動態(tài)參數(shù)功能的sqlite工具類
- python使用RNN實現(xiàn)文本分類
- Python操作Oracle數(shù)據(jù)庫的簡單方法和封裝類實例
- 深入淺析Python的類
相關(guān)文章
Python?網(wǎng)頁請求之requests庫的使用詳解
requests?是?Python?中比較常用的網(wǎng)頁請求庫,主要用來發(fā)送?HTTP?請求,在使用爬蟲或測試服務器響應數(shù)據(jù)時經(jīng)常會用到,使用起來十分簡潔,這篇文章主要介紹了Python?網(wǎng)頁請求之requests庫的使用詳解,需要的朋友可以參考下2022-09-09
selenium攜帶cookies模擬登陸CSDN的實現(xiàn)
這篇文章主要介紹了selenium攜帶cookies模擬登陸CSDN的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-01-01

