亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python自定義類中內部函數:__repr__()和__string__

系統 1528 0

我們在定義Python類時,經常會看到比較好的代碼中,都有__repr__和__string__,兩個內部函數的定義。但是我一直很少關注它們的區別和具體應用場景。稍微做個小結。

1.__foo()__在python中表示__foo__是一個私有private 函數,在CookBook pp254中,解釋為,該函數不會被子類的相同名稱的函數重載。一般地說,類中以“下劃線”開頭定義的變量或者函數都是私有變量或者內部函數,區別是:

? 1.1 單下劃線開始的變量或者函數表示非公有名稱,會被子類初始化時處理,也就是說暴露給繼承的子類。

? 1.2 雙下劃線開頭的變量或函數會對子類隱藏

2.__repr__(),可以被用于obj=eval(repr(obj)),也就說是可以用該函數返回值的字符串文本重新創建該類的實例;而__str__(),是將實例轉換為一個字符串。

?

            
              #coding:utf-8
class Test():
    def __init__(self,x,y):
        self.x=x
        self.y=y

    def __repr__(self):
        return 'Test({0.x!r},{0.y!r})'.format(self)   

    def __str__(self):   #convert the instance to string,then print out
        return '({0.x!s},{0.y!s})'.format(self)


#output:
In [4]: from my_repr import Test
In [5]: test=Test
In [6]: test
Out[6]: my_repr.Test
In [7]: test=Test(3,4)  #實例化對象
In [8]: test
Out[8]: Test(3,4)   #返回的是__repr__()中的字符串
In [9]: print(test)  #返回的是__str__()的值
(3,4)
In [10]: tt=eval(repr(test))  #tt是Test類的另一個實例
In [11]: tt
Out[11]: Test(3,4)
In [12]: id(tt)==id(test)
Out[12]: False
In [13]: id(tt)
Out[13]: 2302160271176
In [14]: id(test)
Out[14]: 2302160237176
In [15]: type(test)==type(tt)
Out[15]: True

            
          

?


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 精品视频久久久久 | 深夜在线看片 | 亚洲精品αv一区二区三区 亚洲精品爱爱久久 | 91av国产在线| 九天玄帝诀在线观看 | 欧美成人一区二区 | 精品亚洲一区二区三区在线播放 | 五月天婷婷免费观看视频在线 | 永久黄网站色视频免费 | oldwoman中国老女人tv | 成人性视频网站 | 九九久久国产精品大片 | 国产亚洲精品一区二区久久 | 久久久久久久久久综合情日本 | 欧美成人毛片免费视频 | 婷婷综合久久狠狠色99h | 婷婷色人阁 | 色综合色狠狠天天综合色 | 国产伦久视频免费观看 视频 | 国产精品一区二 | 久久精品人人做人人看最新章 | 久热精品在线视频 | h片免费网站 | 写真福利 第 页 在线视频 | 精品国产高清毛片 | 四虎国产精品永久地址48 | 日韩成人精品在线 | 亚洲黄页 | x8x8国产日韩欧美 | 国产区精品 | 精品日韩二区三区精品视频 | 欧美精品国产第一区二区 | 天天草夜夜爽 | 男人猛桶女人下面视频国产 | 亚洲香蕉久久一区二区三区四区 | 国产精品视频久久久久久 | 福利姬视频在线观看 | 毛片视频免费 | 免费a级毛片在线播放 | 手机看片福利盒子久久青 | 国产精品一级毛片不收费 |