51Testing软件测试论坛

标题: Python 占位字符 %r 和 %s 的区别 [打印本页]

作者: 素简生香    时间: 2017-11-16 13:36
标题: Python 占位字符 %r 和 %s 的区别
本帖最后由 素简生香 于 2017-11-17 11:02 编辑

%r repr()方法处理被占位的对象
%s str()方法处理被占位的对象
函数str() 用于将值转化为适合人阅读的形式
函数repr() 转化为供解释器读取的形式
有些情况下,两者处理的结果是一样的
print "I am %d years old."%51
print "I am %s years old."%52
print "I am %r years old."%53
输出结果:
I am 51 years old.
I am 52 years old.
I am 53 years old.
有些情况下,两者处理的结果则不同
text = "I am %d years old."%54
print "He said: %s."%text
print "He said: %r."%text
输出结果:
He said: I am 54 years old..
He said: 'I am 54 years old.'.
有些情况下,两者处理的结果很不同
import datetime
dt = datetime.date.today()
print "%s"%dt
print "%r"%dt
输出结果:
2017-10-16
datetime.date(2017, 10, 16)






欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2