位置: 编程技术 - 正文
推荐整理分享python使用str & repr转换字符串(PYTHON使用缩进来体现代码之间的逻辑关系),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:python str()怎么用,str.python,python中str.strip,python strstr,python strstr,python str怎么用,python __str__ __repr__,PYTHON使用缩进来体现代码之间的逻辑关系,内容如对您有帮助,希望把文章链接给更多的朋友!
可能比较 low 还是记录一下:
str 和 repr的使用过程
str 是一个类型 (int, long 类似), 同样她也可以作为一个工厂方法 实例一个 string repr 是python 内置的函数, 用于保留一个 打印值在python 代码片段里的真实状态好,以上全是废话
可以看到, 我们可以通过使用 str 和 repr 来转换字符串
但是,str 只能提供一个 元string来做转换, 不可以是一个变量(她不具备执行变量的能力)
repr 是一个函数, 所以实际上是传参, 可以是变量和string
好多人都知道str()能把数字转成字符串,python里的str()甚至还能把列表、字典等对象转成字符串。这都好理解,可是一旦把str()和repr()放在一起,大家就全都不淡定了-_-!
来看一段代码,仍是在IDLE里交互:
先看前两句:英文的'hello'在str()后仍是'hello',可是在repr()后就变成了"'hello'"。这就说明,str()返回的就是字符串本身,而repr()虽然返回的也是字符串,但它是一个标准字符串,官方解释比较绕,我来解释下吧。repr是representation及描述的意思,不是对人的描述,而是对python机器的描述,也就是它会将某物返回一个它在python中的描述。说人话:repr(obj)告诉我们obj这个变量在背地里是什么样子,在背地里是怎么被python处理被python"玩弄"的。
在python里,我们总会被眼睛欺骗。编辑器里显示的东西,并不总是它原本的面貌。python为了方便,总是表面上一套,背地里又一套。
再来理解后两句:中文的'你好'在str()后变成了编码'xc4xe3xbaxc3',在repr()后变成了"'xc4xe3xbaxc3'"。`都加上了转移符变成,相当于把字符串中的内容都“标准化”了。至于'变成"`只是为了说明repr()返回的是一个经过处理的新字符串。
print后的str()和repr()
来看代码:
之前str('你好')显示的是'xc4xe3xbaxc3',而一经过print,就变成了正确的'你好'。上面说过了,命令行里直接输入一个变量,显示的是它在python后台存储的数据;而用print出来的东西,会显出出尽量友好、让人能看懂的东西。理解了这个,对print这两个结果的不同,也就全然理解了。然后也就放弃print作为考据的心了。
Python判断某个用户对某个文件的权限 在Python我们要判断一个文件对当前用户有没有读、写、执行权限,我们通常可以使用os.access函数来实现,比如:#判断读权限os.access(myfile,os.R_OK)#判断写
CentOS6.5设置Django开发环境 今天在我的Centos6.5机器上安装Django开发环境,在安装完使用django-admin.pystartprojectmyapp创建应用的时候报了下面的错误$django-admin.pystartprojectmyappTraceback(mostr
python append、extend与insert的区别 最近在自学Python语言,看到向列表增加更多数据时被append(),extend(),insert()方法绕晕了。append和extend都只需要一个参数,并且自动添加到数组
上一篇:PYTHON 中使用 GLOBAL引发的一系列问题(pythonglobal用法)
友情链接: 武汉网站建设