如何用python将目标字符串用十六进制表示非转换,python十六进制,我想将输入的字符串用十六
如何用python将目标字符串用十六进制表示非转换,python十六进制,我想将输入的字符串用十六
我想将输入的字符串用十六进制表示,首先声明,并不是转换成十六进制的字符串,而是像下面的反过程:
>>> '\x61\x62\x63\x64''abcd'
我尝试了python3中的encode('UTF-8')等方法,但是都没有找到怎样可以达到我的目的,Python中是否能够完成这个功能,如果可以,怎样才能达到我的目的,希望各位大神能够指教。
python3
>>> print(''.join((r'\x%2x'%ord(c)for c in 'abcd')))\x61\x62\x63\x64>>> print(''.join((r'\x%2x'%c for c in bytes('abcd','l1'))))\x61\x62\x63\x64>>> print(''.join((r'\x%2x'%c for c in b'abcd')))\x61\x62\x63\x64
>>> '\x61\x62\x63\x64' == 'abcd'True
是没有办法打印出来'x61x62x63x64'的,如果只是想查看'a'对应的ascii数值,可以用ord()
>>> ord('a')97>>> chr(97)'a'
不知道这样可不可以满足你的要求
>>> [hex(ord(x)) for x in 'abcd']['0x61', '0x62', '0x63', '0x64']
binascii 库里好几个函数都可以做到
import binasciiprint(binascii.b2a_hex(b'abcd'))# b'61626364'
或者 py3.5 直接这样写
print(b'abcd'.hex())# 61626364
python3
>>> print(''.join((r'\x%2x'%ord(c)for c in 'abcd')))\x61\x62\x63\x64>>> print(''.join((r'\x%2x'%c for c in bytes('abcd','l1'))))\x61\x62\x63\x64>>> print(''.join((r'\x%2x'%c for c in b'abcd')))\x61\x62\x63\x64
编橙之家文章,
相关内容
- python函数参数接收问题求助,python函数问题求助,多个参
- 请问百度怎么算搜索跳出率?python可以实现吗,跳出py
- Python操作oracle有哪几种方法?,pythonoracle,linux下python
- Flask如何搭建网站没有思路,大家帮我想想办法,flask搭
- 请问Python可以终止对象实例化进程呢?,python实例,如图
- 求opencv python详细配置方法,opencvpython,opencv pytho
- 汉字在python中出错,中文格式写入文件后出现乱码怎么
- 想用web端完成调度后台的python程序要怎么写?,webpyt
- django unicode类型字段值转换成int类型时报错invalid liter
- python34_d.lib这个文件在哪层目录下,,我自己写了一个例
评论关闭