-
python chr()、unichr()和ord()
添加时间:2013-5-23 点击量:chr()、unichr()和ord()
chr()函数用一个局限在range(256)内的(就是0~255)整数作参数,返回一个对应的字符。unichr()跟它一样,只不过返回的是Unicode字符,这个从Python 2.0才参加的unichr()的参数局限依附于你的Python是如何被编译的。若是是设备为USC2的Unicode,那么它的容许局限就是range(65536)或0 x0000-0 xFFFF;若是设备为UCS4,那么这个值应当是range(1114112)或0 x000000-0 x110000。若是供给的参数不在容许的局限内,则会报一个ValueError的异常。
ord()函数是chr()函数(对于8位的ASCII字符串)或unichr()函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的ASCII数值,或者Unicode数值,若是所给的Unicode字符超出了你的Python定义局限,则会激发一个TypeError的异常。
>>> chr(50)
2
>>> ord(f)
102
>>> unichr(20013)
u\u4e2d
>>> print unichr(20013)
中
>>> chr(20013)
Traceback (most recent call last):
File <stdin>, line 1, in ?
chr(20013)
ValueError: chr() arg not in range(256)
>>> ord(u\u4e2d)
Traceback (most recent call last):
File <stdin>, line 1, in ?
ord(u\u4e2d)
TypeError: ord() expected a character, but string of length 2 found
>>> ord(u\u2345)
9029
当所有的编码格局都无法经由过程期,可以应用unichr(ord(单个字符)).encode(utf-8)来进行编码,输出的必然是个utf-8。
我俩之间有着强烈的吸引力。短短几个小时后,我俩已经明白:我们的心是一个整体的两半,我俩的心灵是孪生兄妹,是知己。她让我感到更有活力,更完美,更幸福。即使她不在我身边,我依然还是感到幸福,因为她总是以这样或者那样的方式出现在我心头。——恩里克·巴里奥斯《爱的文明》