Python 字符处理方法:str, repr区别
1.str与repr
很多时候用 Python 进行输出,我们会把其他类型的值转化成string进行输出(私以为是Python注重和人的交互,而string是最适合与人类进行交互的数据类型),有str()和repr()两种方法对数据类型进行转化,str()转化后的结果更适合与人进行交互,而repr()转化后的结果则可以被Python的解释器阅读,但当要转化的对象没有适合与人交互的类型时,str()转化的结果和repr()是一样的:
>>> s='hello world'
>>> str(s)
'hello world'
>>> repr(s)
"'hello world'"
>>>
当交互的对象是人时,'hello world'显而易见就是一个字符串,字符串代表的意思是不言而喻,或者说人更关注' '内的信息,而非' '本身,但是机器则不同,如果直接把hello world传给机器,他很难处理这个数据,但是有了' '后,Python的解释器就知道这是一个字符串,或者也可以这么说,相较于字符串的具体内容,机器更关心的是'hello world'这个整体,所以为了保存所需要的信息,repr()会给转化的对象加上" "。
>>> x=10
>>> s='the value of x is '+repr(x)
>>> s
'the value of x is 10'
>>> u='the value of x is '+str(x)
>>> u
'the value of x is 10'
>>>
对于这种组合类型的变量,str()和repr()的结果是一样的。
>>> h='hello \n'
>>> print(str(h))
hello
>>> print(repr(h))
'hello \n'
>>>
str()和repr()的区别可见一斑。
本文详细阐述了Python中str和repr方法的区别与应用场景。str主要用于提高数据的可读性,适用于人机交互;而repr则确保数据能被Python解释器正确读取,适用于程序内部使用。
2万+

被折叠的 条评论
为什么被折叠?



