在 python 中定义字符串时,开头的 'u 做了啥? [复制]
Posted
技术标签:
【中文标题】在 python 中定义字符串时,开头的 \'u 做了啥? [复制]【英文标题】:What does a beginning 'u do when defining a string in python? [duplicate]在 python 中定义字符串时,开头的 'u 做了什么? [复制] 【发布时间】:2016-04-10 04:10:55 【问题描述】:前几天刚开始学习python,偶然发现str.isdecimal()
函数。在 python 环境中输入以下内容时出现错误:
text="123"
Print text.isdecimal()
错误是:“str”对象没有“isdecimal”属性。
但是,当我输入以下内容时:
text=u"123"
Print text.isdecimal()
然后一切正常,我得到“True”作为预期的回报。
我的问题
这里发生了什么?具体来说,你对字符串定义做了什么,为什么 isdecimal 函数不能正常工作?
谢谢你,如果这个问题太简单了,我们深表歉意。
【问题讨论】:
【参考方案1】:isdecimal
是 Unicode 字符串的方法,但不是字节字符串。 u'xxx'
定义了一个 Unicode 字符串。
【讨论】:
【参考方案2】:它将字符串定义为unicode
类型,而不是str
类型。
【讨论】:
以上是关于在 python 中定义字符串时,开头的 'u 做了啥? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
python js逃脱解码,逃离会吧吧中文变成以u开头的字符串,这与python自带编码库的方式不一样
字符串编码中的 Python-3 和 \x Vs \u Vs \U 以及为啥