内置函数bytes()

a=b'\x00\x9c@c'
print a[3]#99,c的ascii码是99
print a[1]#156 

并且byte是无法修改的

c[1]=155
Traceback (most recent call last):
  File "<pyshell#6>", line 1, in <module>
    c[1] = 155
TypeError: 'bytes' object does not support item assignment

 

而函数bytes()就是将参数转化为byte的函数

 

1当参数为数字时:

>>> bytes(2)

b'\x00\x00'

>>> bytes(1)

b'\x00'

 

2当参数为序列时,序列元素必须是0 <= x < 256,原因是一个字节占8位,8位二进制数的范围就是0到255之间。这序列的每个元素代表一个字节

bs = bytes([0, 156, 64 , 99])

print (bs)#b'\x00\x9c@c'

#asc码为64的为@,99的为c

 

3

c=bytes("你好","utf-8")

print (c)

c=bytes("你好","gbk")

print (c)

#b'\xe4\xbd\xa0\xe5\xa5\xbd'

#b'\xc4\xe3\xba\xc3'

 

4与bytes()很接近的是bytearray(),不同的是他返回的byte是可修改的

>>> b = bytearray(10)

>>> b

bytearray(b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00')

>>> b[1] = 1 #可修改

>>> b

bytearray(b'\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00')

 参考http://www.cnblogs.com/sesshoumaru/

转载于:https://www.cnblogs.com/saolv/p/9222132.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值