当前位置:首页 » 编程语言 » 16进制字符串python

16进制字符串python

发布时间: 2024-06-12 05:55:19

python3 16进制字符串、列表、字符串之间的转换

在Python操作数据内容时,多数情况下可能遇到下面3种类型的数据处理:

hexstring 如:ƇC532145697A8B6F'

str 如:'x1Cx53x21x45x69x7Ax8Bx6F'

list 如:[0x1C, 0x53, 0x21, 0x45, 0x69, 0x7A, 0x8B, 0x6F]

各种第三方模块(如pyDes),或者自己写的接口中,可能存在由于类型不统一需要在这3种数据中来回切换的情况。

需要用到的核心的方法如下:

list() 将对象转换为list

str() 将对象转换为str

bytearray() 将对象转换为bytearray

bytearray.fromhex() 将对象从hexstring转换为bytearray

binascii.b2a_hex() 将对象从str转换为hexstring

如:[0x53, 0x21, 0x6A] -> 'x53x21x6a'

方法:list -> bytearray -> str

如:'x53x216a' -> [0x53, 0x21, 0x6A]
方法:逐个字符转成十进制

如: [0x53, 0x21, 0x6A] -> �A'
方法:list -> bytearray -> str -> hexstring

如: �A' -> [0x53, 0x21, 0x6A]
方法:hexstring -> bytearray -> list

如: �A' -> 'x53x21x6A'
方法:hexstring -> bytearray -> str

以上内容转自: https://blog.csdn.net/diaoxuesong/article/details/72123415#

⑵ 如何用python将utf8编码的16进制字符串转换成对应的文字

#coding:utf-8
'''
参考用
mystery=b"xe5x88xab"
x=mystery.decode('utf-8')
print(x)


y=bytearray.fromhex(xe5x88xab).decode()
print(y)
'''

var=1
whilevar==1:
a=input('输入UTF-8的16进制编码: ')

b=list(a)

#print(b)

leng=len(b)

i=0

while(i<(1.5*leng)):
b.insert(i,'\x')
i+=3

#print(b)

c=str(''.join(b))

#print(c)

d='b'+"'"+c+"'"

#print(d)

x=eval(d).decode('utf8')
print('转换结果为: {} '.format(x))

我这个是输入没有x这种形式的,如输入“44”(代表“D”的16进制UTF8码),输出"D"

如果你需要输入形如x44这种,需要自己修改一下。

⑶ python 如何将16进制数据字符串去掉0x部分,然后转换成16进制数据写入到文件中

#-*-coding:utf-8-*-

__author__='lpe234'
__date__='2015-04-01'


hex_list=['0xAA','0xED','0xEF','0xDE']
f=file('x.txt','a+')
forxinhex_list:
ifx.startswith('0x'):
x=x[2:]
printx
f.write(x+' ')
f.close()

输出文件:

AA
ED
EF
DE

⑷ 在Python里 16进制的字符串怎么转化为汉字呢

做下进制转换就行了
#python
2.6以后内置函数
#10进制转为2进制
>>>
bin(10)
'0b1010'
#2进制转为10进制
>>>
int("1001",2)
9
#10进制转为16进制
>>>
hex(10)
'0xa'
#16进制到10进制
>>>
int('ff',
16)
255
>>>
int('0xab',
16)
171
#十进制转为八进制
>>print("%o"
%
10)
>>12
#16进制到2进制
>>>
bin(0xa)
'0b1010'
>>>

⑸ 在Python里 16进制的字符串怎么转化为汉字呢

做下进制转换就行了
#python 2.6以后内置函数

#10进制转为2进制
>>> bin(10)
'0b1010'

#2进制转为10进制
>>> int("1001",2)
9

#10进制转为16进制
>>> hex(10)
'0xa'

#16进制到10进制
>>> int('ff', 16)
255

>>> int('0xab', 16)
171

#十进制转为八进制
>>print("%o" % 10)
>>12

#16进制到2进制
>>> bin(0xa)
'0b1010'
>>>

⑹ 如何用python将utf8编码的16进制字符串转换成对应的文字

你所指的utf-8编码的16进制字符串应该是在IDE中显示的问题。如果你要显示对应的文字,可以将它转为字符串数据(如果你是用list形式显示了字符串信息而显示出来是16进制的话),也可以将它输出到文本中。

⑺ python我怎么把数组里面的每个字符串转换成16进制数啊

  1. 先把字符串转化为数字格式,

  2. 再用hex()把十进度数字转化为十六进制数

代码如下:

source=['1','2','3','4']
destination=[]
foriteminsource:
destination.append(hex(int(item)))
print(destination)

输出如下:

['0x1','0x2','0x3','0x4']

⑻ python 16进制转字符串

你的16进制的串“C7 EB CE F0 BE C6 BA F3 BC DD B3 B5”是gbk编码的,通过以下方法可以转为字符串。

>>>s="C7EBCEF0BEC6BAF3BCDDB3B5"
>>>s=s.replace("","")
>>>prints.decode("hex")
请勿酒后驾车
热点内容
师资配置含哪些内容 发布:2025-01-18 07:17:35 浏览:706
江西脚本 发布:2025-01-18 07:14:38 浏览:392
php中i方法 发布:2025-01-18 07:13:19 浏览:369
FTP宝塔Linux面板 发布:2025-01-18 07:10:05 浏览:395
无线网卡怎么改密码 发布:2025-01-18 06:54:41 浏览:765
ava动态编译 发布:2025-01-18 06:54:39 浏览:765
中国学位论文全文数据库 发布:2025-01-18 06:43:49 浏览:688
全局变量存储类别 发布:2025-01-18 06:39:29 浏览:423
苹果平板的王者号如何转移到安卓 发布:2025-01-18 06:37:11 浏览:611
图片访问量 发布:2025-01-18 06:36:34 浏览:497