如何在Python中将字符转换为整数,以及反之?

416

我想要得到一个字符的ASCII值。

例如,对于字符a,我想要得到97,反之亦然。

5个回答

711

使用 chr()ord() 函数:

>>> chr(97)
'a'
>>> ord('a')
97

142
>>> ord('a')
97
>>> chr(97)
'a'

32
你比另一个人早发了1分钟的回答,却仍然错过了500多个赞... - oriont
2
那是因为后者被选为答案了,哈哈。 - Sean W
4
人生就是这样。我也点了赞,但我怀疑他11年后是否还关心这个。 - Sankeeth Ganeswaran
5
后者有文档链接。 - Mr Davron

22

ord and chr


119
我最喜欢这个答案的部分是他们无意中写了一个有效的Python代码行。 - ArtOfWarfare
5
当您输入“print ((ord and chr)(0O041))”时,它将输出字符“A”的ASCII码值。ord()函数返回字符的ASCII码值,chr()函数则将ASCII码值转换为对应的字符。在这个例子中,0O041是八进制表示法,它等同于十进制数33,也就是字符“A”的ASCII码值。 - AndyB

2

这不是楼主的问题,但鉴于标题是如何在Python中将字符转换为整数

int(num) <==> ord(num) - ord('0')

str(char) <==> ord(char) - ord('a')

1
对于长字符串,您可以使用这个。
 ''.join(map(str, map(ord, 'pantente')))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接