如何在python中显示ASCII码呢?其实你只需要记住两个函数即可:ord()和 chr(),这两个函数都是python内置的函数,不需要引入任何的包,直接就可以使用。
一、显示ASCII码
显示ASCII码直接用ord函数即可,代码如下:
x = 'A'
print(ord(x))
print(ord('B'))
显示结果如下:
65
66
这里的ord函数就是直接显示x变量的ASCII码,x变量必须是字符类型的,而且可以直接在ord函数里加上字符。
如果你在你的python的集成环境里输入过ascii这个几个字,你会发现其实ascii也是一个函数,然后你可能会理所当然的认为这个函数也是求ASCII码的,然后你可能会试着写下面这样的代码:
print(ascii(x))
但是你会神奇的发现,输出的还是原来的字符,并没有输出A的ASCII码,这是为什么呢?我们下面再讨论,到目前我想让你知道的是,ascii这个函数并不是求ASCII码的。
二、将ASCII码转换成字符
聪明的你一定知道用的就是本文开头提到的chr函数,写出下面这样的代码应该没有难度:
x = 'A'
y = ord(x)
print(chr(y))
输出的当然还是A
三、什么是ascii()函数?
在这儿我解释下为什么刚刚我们用ascii这个函数求不出来ASCII码,是因为这个函数并不是求ASCII码的,而是用来判断你传给他的参数是不是在ASCII码表中的。换句话来说,它是用来判断你所传给它的东西能否转换成ascii码,如果能转换,便会输出原字符,如果不能便会采用一种特殊的编码形式来输出编码后的结果。
第一部分中的A是可以转换成ASCII码的,所以直接输出原字符,但是如果你写成下面这样:
print(ascii("几维wk"))
你会得到下面的结果:
'\u51e0\u7ef4wk'
前半部分看似乱七八糟的东西就是一种特殊的编码形式,源于中文没有对应的ASCII码,而wk是英文字符,有对应的ASCII码,所以直接输出了原字符。