亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python面向對象編程repr方法教程

發布時間:2021-09-29 15:14:59 來源:億速云 閱讀:150 作者:iii 欄目:開發技術

本篇內容主要講解“Python面向對象編程repr方法教程”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Python面向對象編程repr方法教程”吧!

目錄
  • 為什么要講 __repr__

  • 重寫 __repr__ 方法

  • str() 和 repr() 的區別

為什么要講 __repr__

在 Python 中,直接 print 一個實例對象,默認是輸出這個對象由哪個類創建的對象,以及在內存中的地址(十六進制表示)

假設在開發調試過程中,希望使用 print 實例對象時,輸出自定義內容,就可以用 __repr__ 方法了

或者通過 repr() 調用對象也會返回 __repr__ 方法返回的值

是不是似曾相識....沒錯..和 __str__ 一樣的感覺 代碼栗子

class A:
    pass
 
    def __repr__(self): 
a = A()
print(a)
print(repr(a))
print(str(a))  
# 輸出結果
<__main__.A object at 0x10e6dbcd0>
<__main__.A object at 0x10e6dbcd0>
<__main__.A object at 0x10e6dbcd0>

默認情況下,__repr__() 會返回和實例對象 <類名 object at 內存地址> 有關的信息

重寫 __repr__ 方法

class PoloBlog:
    def __init__(self):
        self.name = "小菠蘿"
        self.add = "https://www.cnblogs.com/poloyy/"
 
    def __repr__(self):
        return "test[name=" + self.name + ",add=" + self.add + "]"  
blog = PoloBlog()
print(blog)
print(str(blog))
print(repr(blog)) 
# 輸出結果
test[name=小菠蘿,add=https://www.cnblogs.com/poloyy/]
test[name=小菠蘿,add=https://www.cnblogs.com/poloyy/]
test[name=小菠蘿,add=https://www.cnblogs.com/poloyy/]

只重寫 __repr__ 方法,使用 str() 的時候也會生效哦

class PoloBlog:
    def __init__(self):
        self.name = "小菠蘿"
        self.add = "https://www.cnblogs.com/poloyy/"
 
    def __str__(self):
        return "test[name=" + self.name + ",add=" + self.add + "]"
 
blog = PoloBlog()
print(blog)
print(str(blog))
print(repr(blog))
 
# 輸出結果
test[name=小菠蘿,add=https://www.cnblogs.com/poloyy/]
test[name=小菠蘿,add=https://www.cnblogs.com/poloyy/]
<__main__.PoloBlog object at 0x10e2749a0>

只重寫 __str__ 方法的話,使用 repr() 不會生效的哦!

到此,相信大家對“Python面向對象編程repr方法教程”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

普陀区| 都昌县| 汾西县| 旌德县| 南宁市| 当阳市| 鞍山市| 调兵山市| 岐山县| 鄢陵县| 兰坪| 邹平县| 阿拉善盟| 东方市| 通州区| 竹山县| 仁怀市| 和林格尔县| 农安县| 监利县| 庄河市| 讷河市| 塘沽区| 台南县| 运城市| 宁安市| 满城县| 奇台县| 米易县| 珠海市| 高平市| 水城县| 泰和县| 苗栗市| 文昌市| 固阳县| 安多县| 泰州市| 和田市| 富阳市| 叙永县|