私有化
私有化 封裝:1. 私有化屬性;2.定義公有set和get方法
__屬性就是私有化,訪問範圍僅僅限於類中
私有化的優勢是:
1.隱藏屬性不被外界隨意修改
2.想修改時利用set***函式來改
3.可以利用if來篩選賦值內容
4.如果想獲取某乙個具體的屬性,可以利用get函式
class
student
: __age =
18def
__init__
(self,name,age)
: self.__name = name
self.__age = age
self.__score =
50# 定義公有set和get方法
# set是為了賦值
# get是為了取值
defsetage
(self,age)
: self.__age = age
# def set
defgetage
(self)
:return self.__age
def__str__
(self)
:return
'姓名:{},年齡:{},分數:{}'
.format
(self.__name,self.__age,self.__score)
xupeng = student(
'xupeng',18
)print
(xupeng)
xupeng.setage(
120)
# 年齡可以這樣變更
print
(xupeng.getage())
# xupeng.__score = 95 # 這個沒有賦值成功
print
(xupeng)
姓名:xupeng,年齡:
18,分數:
50120
姓名:xupeng,年齡:
120,分數:
50
python私有化方法 Python 私有化
python中的私有變數和私有方法仍然是可以訪問的 訪問方法如下 私有變數 例項.類名 變數名 私有方法 例項.類名 方法名 python並沒有真正的私有化支援,但可用下劃線得到偽私有。盡量避免定義以下劃線開頭的變數 1 單下劃線 開始的成員變數叫做保護變數,意思是只有類例項和子類例項能訪問到這些變...
Python基礎 15私有化
預設情況下,屬性在python 中都是 public 1 雙下劃線 python 為類元素 屬性和方法 的私有性提供初步的形式。由雙下劃線開始的屬性在執行時被 混淆 所以直接訪問是不允許的。實際上,會在名字前面加上下劃線和類名。class pubpri object def init self,nu...
python 私有化屬性
python 沒有和其他程式語言一樣的定義共有屬性和私有屬性的關鍵字,實現屬性私有化和屬性保護,都是使用 格式進行的偽效果。私有化使用場景 保護屬性 比如銀行存款等,存款直接外放非常危險,就可以私有化,然後通過類提供的方法增加刪減鉛筆的金額,對存款進行保護。內部過濾 過濾一下不符合屬性的資料,資料不...