1. 程式人生 > 程式設計 >如何使用repr除錯python程式

如何使用repr除錯python程式

一般除錯程式的時候都比較傾向print,利用直接列印的方法作出判斷,但是print只能打印出結果,對型別無法作出判斷。例如:

複製程式碼
a = 5
b = '5'
print(a)
print(b)

結果為:
5
5
複製程式碼
對於a和b從表面看是一樣的,可能就會預設為a == b

實則a為int型別,b為string型別

再用repr看看結果:

複製程式碼
a = 5
b = '5'
print(repr(a))
print(repr(b))

結果為:
5
'5'
複製程式碼
對於動態的python物件來說,利用repr也是很方便的:

複製程式碼
class OpenClass(object):

def __init__(self,x,y):
self.x = x
self.y = y

obj = OpenClass(2,3)
print(obj)
# 結果為:<__main__.OpenClass object at 0x101cb7390>
複製程式碼
用repr重建物件:

複製程式碼
class OpenClass(object):
def __init__(self,y):
self.x = x
self.y = y

def __repr__(self):
return 'OpenClass(%d,%d)'%(self.x,self.y)
obj = OpenClass(2,3)

print(obj)
# 結果為:OpenClass(2,3)
複製程式碼
對於print只能打印出易於閱讀的資訊,而型別則顯示不出來

repr則顯示出型別,簡明的展示出資料資訊

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。