最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python底層封裝實現(xiàn)方法詳解

 更新時間:2020年01月22日 08:43:11   投稿:yaominghui  
這篇文章主要介紹了Python底層封裝實現(xiàn)方法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

這篇文章主要介紹了Python底層封裝實現(xiàn)方法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

事實上,python封裝特性的實現(xiàn)純屬“投機取巧”,之所以類對象無法直接調(diào)用私有方法和屬性,是因為底層實現(xiàn)時,python偷偷改變了它們的名稱。

python在底層實現(xiàn)時,將它們的名稱都偷偷改成了"_類名__屬性(方法)名"的格式

class Person:
  def setname(self, name):
    if len(name) < 3:
      raise ValueError('名稱長度必須大于3!')
    self.__name = name
    
  def getname(self):
    return self.__name
  
  #為name配置setter和getter方法
  name = property(getname, setname)
  
  def setage(self, age):
    if age < 100:
      self.__age = age
    else:
      raise ValueError('年齡必須小于100!')
  
  def getage(self):
    return self.__age
  
  #為age配置getter和setter方法
  age = property(getage, setage)
  
  #定義私有方法
  def __display(self):
    print(self.__name, "今年", self.__age, "歲。")
    
xiaobai = Person()
xiaobai.name = "xiaobai"
xiaobai.age = 20
#直接調(diào)用隱藏的display()方法
xiaobai._Person__display()

xiaobai 今年 20 歲。

總結(jié):python類中所有的屬性和方法,都是公有的,如果希望python底層修改類屬性或者類方法的名稱,以此將它們隱藏起來,只需將它們的名稱前添加雙下劃線("__")即可。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 利用Python展示文件下載進度條

    利用Python展示文件下載進度條

    這篇文章主要介紹了Python展示文件下載進度條,requests庫相信大家都用過,做接口測試少不了它。其實我們平時下載文件,也可以用requests做到的,通過一些地址,下面我們就來看看具體是什么樣的地址及詳細內(nèi)容,需要的朋友可以參考一下
    2021-11-11
  • Python中創(chuàng)建包和增添包的路徑(sys.path.append())

    Python中創(chuàng)建包和增添包的路徑(sys.path.append())

    本文主要介紹了Python中創(chuàng)建包和增添包的路徑(sys.path.append()),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-01-01
  • 在django中自定義字段Field詳解

    在django中自定義字段Field詳解

    今天小編就為大家分享一篇在django中自定義字段Field詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • python3調(diào)用ansible?api使用實例例說明

    python3調(diào)用ansible?api使用實例例說明

    這篇文章主要為大家介紹了python3?調(diào)用ansible?api使用說明,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • keras 自定義loss層+接受輸入實例

    keras 自定義loss層+接受輸入實例

    這篇文章主要介紹了keras 自定義loss層+接受輸入實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • 一文帶你搞懂Python中的數(shù)據(jù)容器

    一文帶你搞懂Python中的數(shù)據(jù)容器

    這篇文章主要為大家詳細介紹了Python中數(shù)據(jù)容器的相關(guān)資料,文中的示例代碼講解詳細,對我們學習Python有一定的幫助,感興趣的可以了解一下
    2022-11-11
  • python調(diào)用百度地圖WEB服務(wù)API獲取地點對應(yīng)坐標值

    python調(diào)用百度地圖WEB服務(wù)API獲取地點對應(yīng)坐標值

    這篇文章主要為大家詳細介紹了python調(diào)用百度地圖WEB服務(wù)API獲取地點對應(yīng)坐標值,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • 基于asyncio 異步協(xié)程框架實現(xiàn)收集B站直播彈幕

    基于asyncio 異步協(xié)程框架實現(xiàn)收集B站直播彈幕

    本文給大家分享的是基于asyncio 異步協(xié)程框架實現(xiàn)收集B站直播彈幕收集系統(tǒng)的簡單設(shè)計,并附上源碼,有需要的小伙伴可以參考下
    2016-09-09
  • 關(guān)于python的xlwings與VBA間的互相調(diào)用

    關(guān)于python的xlwings與VBA間的互相調(diào)用

    這篇文章主要介紹了關(guān)于python的xlwings與VBA間的互相調(diào)用,VBA是一種通用應(yīng)用軟件腳本語言,Excel包含和許多功能強大的數(shù)據(jù)分析對象,例如工作表、圖表、數(shù)據(jù)透視表以及大量的數(shù)學、財務(wù)、工程和通用業(yè)務(wù)函數(shù),配合VBA可以運用這些對象開發(fā)出自動程序
    2023-07-07
  • 詳解python中的IO操作方法

    詳解python中的IO操作方法

    這篇文章主要介紹了Python實現(xiàn)IO操作的示例,是python入門必會得知識點,將幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2022-01-01

最新評論

平潭县| 葵青区| 嘉善县| 公主岭市| 稷山县| 宝坻区| 什邡市| 通江县| 永年县| 南昌市| 正阳县| 彭泽县| 阳城县| 彩票| 彝良县| 英德市| 文化| 杭州市| 黎平县| 宁陕县| 大宁县| 抚远县| 嫩江县| 临沂市| 大城县| 奎屯市| 兴安盟| 翼城县| 巴彦淖尔市| 肇州县| 二连浩特市| 通道| 怀安县| 缙云县| 沿河| 海林市| 婺源县| 灵寿县| 丘北县| 大埔区| 北宁市|