repr()返回的是返回物件的規範字串表示形式。
語法是repr(obj)
obj
:規範化字串要表示的物件
var =
'foo'
print
(repr
(var)
)
輸出:
'foo'
在物件中 ,repr
會呼叫物件的__repr__()
class
person
: name =
'adam'
def__repr__
(self)
:return
repr
('hello '
+ self.name )
print
(repr
(person())
)
輸出:
'hello adam'
e
edit
play_arrow
brightness_4
s ='hello, geeks.'
print
(str
(s))
print
(str
(2.0
/11.0
))
輸出:
hello, geeks.
0.181818181818
s =
'hello, geeks.'
print
(repr
(s))
print
(repr
(2.0
/11.0
))
輸出:
'hello, geeks.'
0.18181818181818182
str()是用來為終端使用者列印資訊的,列印的內容是可讀的(readable) repr是用來debug的,需要列印的內容很明確,不模糊(unambiguous)
edit
play_arrow
brightness_4
import datetime
today = datetime.datetime.now(
)# prints readable format for date-time object
print
(str
(today)
)# prints the official format of date-time object
print
(repr
(today)
)
輸出結果:
2016-02-22 19:32:04.078030
datetime.datetime(2016, 2, 22, 19, 32, 4, 78030)
我們在自定義類的時候,__repr__
是我們需要更多的資訊用來debug,__str__
用來對使用者友好
# python program to demonstrate writing of __repr__ and
# __str__ for user defined classes
# a user defined class to represent complex numbers
class
complex
:# constructor
def__init__
(self, real, imag)
: self.real = real
self.imag = imag
# for call to repr(). prints object's information
def__repr__
(self)
:return
'rational(%s, %s)'
%(self.real, self.imag)
# for call to str(). prints readable form
def__str__
(self)
:return
'%s + i%s'
%(self.real, self.imag)
# driver program to test above
t = complex(10,
20)# same as "print t"
print
(str
(t))
print
(repr
(t))
輸出結果:
10 + i20
rational(10, 20)
Python 有趣的模組 Bobo
mac 我的mac環境,python3.5 1.安裝bobo pip3 install bobo 2.配置環境變數 vi bash profile 退出vi source bash profile 3.建立使用bobo的方法在某個py檔案 檔案內容 import bobo bobo.query de...
有趣的Nodejs模組之events
nodejs 使用了乙個事件驅動 非阻塞 io 的模型。events模組是事件驅動的核心模組。很多內建模組都繼承了events.eventemitter。自己無需手動實現這種設計模式,直接繼承eventemitter即可。如下 const require events class myemitter...
乙個有趣的python排序模組 bisect
今天同事說到了乙個python的排序模組bisect,覺得挺有趣的,跟大家分享分享。先看看模組的結構 前面五個屬性大家感興趣可以打出來看看數值,這裡就不介紹了。先說明的是,使用這個模組的函式前先確保操作的列表是已排序的。先看看 insort 函式 其插入的結果是不會影響原有的排序。再看看 bisec...