为了账号安全,请及时绑定邮箱和手机立即绑定

如何查看Python3 <class'bytes'>对象的字节?

如何查看Python3 <class'bytes'>对象的字节?

蓝山帝景 2021-03-28 14:39:48
考虑到该bytes类型不一定是一个字符串,一个如何可以看到的实际字节(一和零,或八进制/十六进制的这样的表示)bytes对象?尝试print()或使用pprint()这样的对象会导致打印对象的字符串表示形式(假设使用某种编码,可能是ASCII或UTF-8),并在b其前加上字符以表明数据类型实际上是字节:$ python3Python 3.2.3 (default, Oct 19 2012, 19:53:16) >>> from pprint import pprint>>> s = 'hi'>>> print(str(type(s)))<class 'str'>>>> se = s.encode('utf-8')>>> print(str(type(se)))<class 'bytes'>>>> print(se)b'hi'>>> pprint(se)b'hi'>>>请注意,我专门指的是Python3。谢谢!
查看完整描述

3 回答

?
catspeake

TA贡献1111条经验 获得超0个赞

使用bin,oct或hex和访问使用括号标记字节:


>>> print(hex(se[0]))

0x68

>>> print(hex(se[1]))

0x69

显然一个周期会更好:


for a_byte in se:

    print (bin(a_byte))



查看完整回答
反对 回复 2021-04-01
?
慕勒3428872

TA贡献1848条经验 获得超6个赞

使用Python字符串格式显示字节的十六进制值:


>>> se = b'hi'

>>> ["{0:0>2X}".format(b) for b in se]

['68', '69']


查看完整回答
反对 回复 2021-04-01
?
隔江千里

TA贡献1906条经验 获得超10个赞

>>> s = b'hi'

>>> s

b'hi'

>>> print(s)

b'hi'

>>> for i in s:

    print(i)



104

105

>>> y = 'hi'

>>> for i in y:

    print(i)



h

i

>>> 


查看完整回答
反对 回复 2021-04-01
  • 3 回答
  • 0 关注
  • 319 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信