python中 r和 s的區別

2021-06-21 12:44:53 字數 1042 閱讀 1296

%r用rper()方法處理物件

%s用str()方法處理物件

有些情況下,兩者處理的結果是一樣的,比如說處理int型物件。

例一:

print "i am %d years old." % 22

print "i am %s years old." % 22

print "i am %r years old." % 22

返回結果:

i am 22 years old.

i am 22 years old.

i am 22 years old.

另外一些情況兩者就不同了

例二:

text = "i am %d years old." % 22

print "i said: %s." % text

print "i said: %r." % text

返回結果:

i said: i am 22 years old..

i said: 'i am 22 years old.'. // %r 給字串加了單引號

再看一種情況

例三:

import datetime

d = datetime.date.today()

print "%s" % d

print "%r" % d

返回結果:

2014-04-14

datetime.date(2014, 4, 14)

可見,%r列印時能夠重現它所代表的物件(rper() unambiguously recreate the object it represents)

參考:

Python中 r與 s的區別

r是rper 方法處理的物件 s是str 方法處理的物件 其實有些情況下,兩者處理的結果是一樣的,比如說處理資料型別為int型物件 例如1 print i am d year old.22 print i am s year old.22 print i am r year old.22 返回的結果...

Python中 r和 s的詳解及區別

python中 r和 s的詳解 r用rper 方法處理物件 s用str 方法處理物件 有些情況下,兩者處理的結果是一樣的,比如說處理int型物件。例一 print i am d years old.22 print i am s years old.hpbpcuecr 22 print i am r...

Python中「 r」與「 n」區別

print asdfg nss end print asdfg r nss end print asdfg rss end 直接輸出,第一行和第三行的結果是一樣的。asdfg ss p.s.第二行的結果是在中間空了一行 但是,切換到終端後再執行第一行和第三行的結果有了明顯不同 print asdfg...