内容简介:需求:将形如方法1 导入方法2
需求:将形如 ’y\xcc\xa6\xbb’
的 byte
字符串转化为 integer
或者 string
方法1 导入 struct
包
import struct
struct.unpack("<L", "y\xcc\xa6\xbb")[0]
方法2 python3.2
及以上
若 byte
串采取大端法:
int.from_bytes(b'y\xcc\xa6\xbb', byteorder='big')
若采取小端法,则:
int.from_bytes(b'y\xcc\xa6\xbb', byteorder='little')
方法3 借助十六进制转换
大端法:
s = 'y\xcc\xa6\xbb'
num = int(s.encode('hex'), 16)
小端法:
int(''.join(reversed(s)).encode('hex'), 16)
方法4 使用 array
包
import array
integerValue = array.array("I", 'y\xcc\xa6\xbb')[0]
其中 I
用于表示大端或小端,且使用此方法要注意自己使用的 python
版本。
方法5 自己写函数实现
如:
sum(ord(c) << (i * 8) for i, c in enumerate('y\xcc\xa6\xbb'[::-1]))
又如:
def bytes2int( tb, order='big'): if order == 'big': seq=[0,1,2,3] elif order == 'little': seq=[3,2,1,0] i = 0 for j in seq: i = (i<<8)+tb[j] return i
字符数组转换成字符串
>>> import array
>>> array.array('B', [17, 24, 121, 1, 12, 222, 34, 76]).tostring()
'\x11\x18y\x01\x0c\xde"L'
参考链接
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
计算机科学概论(第11版)
J. Glenn Brookshear / 刘艺、肖成海、马小会、毛倩倩 / 人民邮电出版社 / 2011-10-1 / 69.00元
本书多年来一直深受世界各国高校师生的欢迎,是美国哈佛大学、麻省理工学院、普林斯顿大学、加州大学伯克利分校等许多著名大学的首选教材,对我国的高校教学也产生了广泛影响。 本 书以历史眼光,从发展的角度、当前的水平以及现阶段的研究方向等几个方面,全景式描绘了计算机科学各个子学科的主要领域。在内容编排上,本书很好地兼顾了 学科广度和主题深度,把握了最新的技术趋势。本书用算法、数据抽象等核心思想贯穿各......一起来看看 《计算机科学概论(第11版)》 这本书的介绍吧!