当前位置: 首页 > 面试题库 >

Python中的字节数组

梁昊天
2023-03-14
问题内容

如何在Python中表示字节数组(如Java中的byte [])?我需要使用gevent通过电线发送它。

byte key[] = {0x13, 0x00, 0x00, 0x00, 0x08, 0x00};

问题答案:

在Python 3中,我们使用bytes对象,str在Python 2中也称为。

# Python 3
key = bytes([0x13, 0x00, 0x00, 0x00, 0x08, 0x00])

# Python 2
key = ''.join(chr(x) for x in [0x13, 0x00, 0x00, 0x00, 0x08, 0x00])

我发现使用该base64模块更方便…

# Python 3
key = base64.b16decode(b'130000000800')

# Python 2
key = base64.b16decode('130000000800')

您还可以使用文字…

# Python 3
key = b'\x13\0\0\0\x08\0'

# Python 2
key = '\x13\0\0\0\x08\0'


 类似资料:
  • 问题内容: 我正在开发一个程序,其中将一些数据存储为整数并按位进行处理。例如,我可能会收到数字48,该数字将逐位处理。通常,整数的字节序取决于整数的机器表示形式,但是Python是否做任何事情来确保ints始终为little- endian?还是我需要像在C中一样检查字节序,然后针对这两种情况编写单独的代码? 我问是因为我的代码运行在Sun机器上,尽管现在运行的代码使用Intel处理器,但将来我可

  • 问题内容: 我正在Python中测试vs。我不明白某些差异的原因。 一个迭代器返回的字符串: 给出: 但是迭代器返回s: 给出: 为什么会有所不同? 我想编写可以很好地转换为Python 3的代码。那么,Python 3中的情况是否相同? 问题答案: 在Python中,2.6字节只是str的别名 。 引入此“伪类型”是为了(部分地)准备要与Python 3.0转换/兼容的程序(和程序员!),在Py

  • 问题内容: 我有一个很长的十六进制字符串,代表一系列不同类型的值。我希望将此十六进制字符串转换为字节数组,以便可以将每个值移出并将其转换为适当的数据类型。 问题答案: 假设您的十六进制字符串类似于 将其转换为字符串(Python≤2.7): 或从Python 2.7和Python 3.0开始: 请注意,这是的不变版本。

  • 问题内容: 我正在尝试 从字节数组创建一个。 在Obj-C中,我可能这样做: 我无法弄清楚Swift中的等效功能。 问题答案: 有一个带有指针的初始化程序:。一个参数可以接受多种不同的东西,包括一个简单的斯威夫特阵列,所以你可以使用几乎相同的语法在Objective-C。传递数组时,需要确保将其标识为数组,否则Swift的类型推断将假定您要创建一个数组。 您可以在Apple的与C API交互的 文

  • 问题内容: 在Java中,如果我有一个String ,如何计算该字符串中的字节数? 问题答案: 字符串是字符列表(即代码点)。表示字符串所用的字节数完全取决于你使用哪种编码将其转换为字节。 也就是说,你可以将字符串转换为字节数组,然后按如下所示查看其大小: 因此,你看到,即使是简单的“ ASCII”字符串,其表示形式也可以具有不同数量的字节,具体取决于所使用的编码。使用你感兴趣的字符集作为的参数。

  • 问题内容: 假设我有一个4字符串,并且我想将此字符串转换为字节数组,其中字符串中的每个字符都转换为等效的十六进制。例如 我正在尝试让我的输出成为 有没有简单的方法可以做到这一点? 问题答案: 编码功能可以为您提供帮助,编码返回字符串的编码版本 或者你可以使用数组模块