python中字母与ASCII码之间的转换以及进制间的转换
字母与ascii码:
ord(c):参数是长度为1的字符串,简称字符。当参数为统一对象时(unicode object),返回能代表该字符的统一编码,当参数为8比特的字符串时,返回该字节的值。例如,ord('a')返回整形数值97,ord(u'\u2020')返回8224。
chr(i):返回一个字符,字符的ascii码等于参数中的整形数值。例如chr(97)返回字符'a',该方法是ord()的反方法。参数必须是0-255的整形数值,否则会抛出valueError错误。
进制之间的转换:
- 100 = 0b1100100 (2) = 0o144 (8) = 0x64 (16)
- hex(n) 转化为16进制
- oct(n) 转换为8进制
- bin(n) 转换为2进制
- int(n) 转换为10进制
>>> hex(0o2313621) '0x99791' >>> oct(0b1000101) '0o105' >>> bin(0xe12378fd) '0b11100001001000110111100011111101' >>> int(0b10001) 17 >>> int('0xeabf',16) //字符串只能int转,指定进制 60095 >>> hex(int('0o1234567',8)) //间接转 '0x53977' >>> a=int(input(),2) 10000001 >>> a 129