python字符串用十六进制表示
问题描述
我想将输入的字符串用十六进制表示,首先声明,并不是转换成十六进制的字符串,而是像下面的反过程:
>>> ’x61x62x63x64’’abcd’
我尝试了python3中的encode(’UTF-8’)等方法,但是都没有找到怎样可以达到我的目的,Python中是否能够完成这个功能,如果可以,怎样才能达到我的目的,希望各位大神能够指教。
问题解答
回答1:>>> ’x61x62x63x64’ == ’abcd’True
是没有办法打印出来’x61x62x63x64’的,如果只是想查看’a’对应的ascii数值,可以用ord()
>>> ord(’a’)97>>> chr(97)’a’
不知道这样可不可以满足你的要求
>>> [hex(ord(x)) for x in ’abcd’][’0x61’, ’0x62’, ’0x63’, ’0x64’]回答2:
python3
>>> print(’’.join((r’x%2x’%ord(c)for c in ’abcd’)))x61x62x63x64>>> print(’’.join((r’x%2x’%c for c in bytes(’abcd’,’l1’))))x61x62x63x64>>> print(’’.join((r’x%2x’%c for c in b’abcd’)))x61x62x63x64回答3:
binascii 库里好几个函数都可以做到
import binasciiprint(binascii.b2a_hex(b’abcd’))# b’61626364’
或者 py3.5 直接这样写
print(b’abcd’.hex())# 61626364
相关文章:
1. python如何不改动文件的情况下修改文件的 修改日期2. angular.js - 不适用其他构建工具,怎么搭建angular1项目3. angular.js - Angular路由和express路由的组合使用问题4. python - django 里自定义的 login 方法,如何使用 login_required()5. java8中,逻辑与 & 符号用在接口类上代表什么意思6. mysql优化 - mysql count(id)查询速度如何优化?7. mysql主从 - 请教下mysql 主动-被动模式的双主配置 和 主从配置在应用上有什么区别?8. 主从备份 - 跪求mysql 高可用主从方案9. node.js - node_moduls太多了10. python - 关于ACK标志位的TCP端口扫描的疑惑?
