python中%r和%s的区别

Posted danniel-gong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中%r和%s的区别相关的知识,希望对你有一定的参考价值。

%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)

 

以上是关于python中%r和%s的区别的主要内容,如果未能解决你的问题,请参考以下文章

python %r %s %d 用法和区别

python 和 r 的区别 知乎

Python 中的 !r 和 %r 有啥区别?

r语言中, == 和=,<-各自的区别

Groupby 和 Python/R 的区别

python判断字符串,str函数isdigitisdecimalisnumeric的区别