內建方法 repr

2021-08-21 04:57:31 字數 1532 閱讀 8734

class

school

():def

__init__

(self, name, address):

self.name = name

self.address = address

xh = school('alex', 'aa')

print(xh)

輸出結果:

<__main__.school object

at 0x00000000006c7cc0>

如果新增__repr__這個方法:就會有下面的結果

class

school

():def

__repr__

(self):

# 內建的方法 讓 列印的物件 豐富起來

show_str = ''

for key in self.__dict__:

show_str += '%s:%s\n' % (key, self.__dict__[key])

return show_str

def__init__

(self, name, address):

self.name = name

self.address = address

xh = school('alex', 'aa')

print(xh)

輸出結果:

name

:alex

address

:aa

最新裝逼版

使用**形式列印

from prettytable import prettytable

class

foo:

def__repr__

(self):

table_head_name =

table_value =

for key in self.__dict__:

table_show = prettytable(table_head_name)

table_show.add_row(table_value)

return str(table_show)

class

school

(foo):

def__init__

(self, name, address):

self.name = name

self.address = address

xh = school('alex', 'aa')

print(xh)

輸出結果:

+---------+------+

| address | name |

+---------+------+

| aa | alex |

+---------+------+

Python內建函式str 和repr

內建函式str 和repr representation,表達,表示 或反引號操作符 可以方便地以字串的方式獲取物件的內容 型別 數值屬性等資訊。str 函式得到的字串可讀性好 故被print呼叫 repr 函式得到的字串通常可以用來重新獲得該物件,通常情況下 obj eval repr obj 這...

Python中的常見特殊方法 repr方法

在python中有些方法名 屬性名的前後都新增了雙下劃線,這種方法 屬性通常都屬於python的特殊方法和特殊屬性,開發者可以通過重寫這些方法或者直接呼叫這些方法來實現特殊的功能。其實前面見過的構造方法 init 就是一種特殊方法,開發者可以通過重寫類中的 init 方法實現自己想要的初始化邏輯。p...

魔法方法中的 str 和 repr

str self class test1 def str self return i am str return即返回什麼列印什麼 a str 直接例項化物件名,會列印其位址 main.test1 object at 0x0000025e39348088 print a str 若print,則會列...