%r用rper()方法处理对象
%s用str()方法处理对象
相同结果
有些情况下,两者处理的结果是一样的,比如说处理int型对象。
例:
print('I am %s years old.' % 22)
print('I am %r years old.' % 22)
返回结果:
I am 22 years old.
I am 22 years old.
不同结果
例:
x = "There are %d types of people." % 10
print('I said: %r' %x)
print('I said: %s' %x)
返回结果
I said: 'There are 10 types of people.' # 通过%r 保留了原有所有属性
I said: There are 10 types of people.
例:
import datetime
riqi = datetime.date.today()
print(riqi)
print("%s" %riqi)
print("%r" %riqi)
返回结果
2020-04-02
2020-04-02
datetime.date(2020, 4, 2)