问题标签 [python-bytearray]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
13673 浏览

python - TypeError:“bytearray”对象不能解释为整数

我想通过 HTTP 发送音频数据,但我不明白为什么会出现此异常:

问题似乎与将值传递给wfile.write.

我该如何解决这个问题?

这是我的代码:

0 投票
1 回答
476 浏览

python - 更快的字节数组列表理解/转换?

我有一个bytearray of 2^18 (262144) 字节。目标是将其转换为复杂值的numpy数组。字节数组中的包装是:

我尝试了两种不同的方法,但执行时间仍然很长。有更快的方法吗?

定时输出显示0.8105 and 0.5588每个功能的秒数。

0 投票
1 回答
364 浏览

python - 在 Python 中使用 bytearray 究竟是如何工作的?

我在 Python 中绝对是新手,我有以下问题。

从我在声明字节数组的文档中读到的内容,我不允许分配一个不在 0 到 255 范围内的值。

事实上做这样的事情:

我得到以下异常:

所以第一个问题:这到底是什么意思?这意味着我可以声明一个最多包含 256 个字节的字节数组?还是我错过了什么?如果这个推理是正确的:如果我必须读取包含超过 256 个字节的二进制文件,我该如何处理这种情况?

此外,在另一个示例中,我发现此代码片段用于将数据从源二进制文件复制到目标文件:

如您所见,它声明了一个包含超过 255 个元素的字节数组:

我认为我错过了一些东西。它究竟是如何工作的?

0 投票
1 回答
36 浏览

python - 我想执行文本文件的行,就好像它们是我的 python 脚本的一部分

我有一个包含 shellcode 的文本文件,如下所示:

我想使用自动读取这个shellcode并将其归因于我的python脚本中的一个变量来使用它。我写了一个看起来像这样的脚本

读取文件的内容,去掉我不需要的字符,只留下我需要的原始 shellcode 并将其转换为字节。

我也试过 bytes , bytearray ,buf += b"%s"%(a)

所以每当我打印 buf 时,它会按原样输出 shellcode,但是当我复制 shellcode.txt 的内容并将其粘贴到 python 脚本和 print(buf) 时,它会打印 shellcode 的解码版本。

所以如果这个方法不起作用,我可以读取文件并执行它的每一行,就好像它是脚本的一部分一样?

0 投票
1 回答
29 浏览

python - python 3中字节数组索引的行为

遇到这个:

因此,似乎在字节数组中进行索引时,我们得到了一个整数值——为什么会这样以及我应该如何比较这些值,这样我就不必显式地插入字节字符串元素的 ascii 值?

0 投票
1 回答
608 浏览

python-3.x - 尝试在python中反转字节数组(来自十六进制)

我有以下脚本:

它打印/返回的问题None。我想知道,因为在这个例子中它有效。

提前致谢。

0 投票
0 回答
9 浏览

python - Python如何制作包含字节对象的元组

我有一个字节对象:foo = b'foo'

我想foo放入一个对象foo_container: Tuple[bytes](仅包含一个值)。

但是,当我使用内置tuple函数 on 时foo,它实际上会转换b'foo'为 ASCII 值:

如何将bytes对象放入 one-value tuple

此外,任何解决方案都需要与 Python 3.7+ 兼容

0 投票
1 回答
76 浏览

python-3.x - 如何在 Cassandra Python 驱动程序中存储 PagingState?

我正在实现一个 REST API,它在后台查询 Cassandra(通过 Python 驱动程序)并返回结果。现在要查询的项目会很大,所以我想要有分页能力。

execute() 方法返回的ResultSet有一个名为的属性paging_state,它似乎是字节文字。我想在响应正文中使用类似startKey=<PAGING_STATE_VALUE>. 目前,我看到分页状态看起来像b'\x0cFY5D70822742\x00\xf0\x7f\xff\xff\xe6\x00'.

我应该如何对其进行解码,以便可以将其作为正确的字符串附加到我的 API 响应正文中。我尝试用 解码UTF-8ASCII但它们失败了。

0 投票
0 回答
19 浏览

python - python非阻塞套接字避免在发送中复制

我有一些看起来像这样的代码:

这在具有非阻塞套接字的选择器事件循环中执行。问题在于,这种发送数据的方式需要大量复制(data.outb = data.outb[sent:]),这决定了实际的网络延迟。我想知道 python 中是否有某种字节的循环缓冲区,我可以在其中执行 data.outb = data.outb[sent:] 之类的操作而无需任何复制。

0 投票
2 回答
349 浏览

python - Numpy数组:在不复制的情况下获取原始字节

我正在尝试将多个 Numpy 数组的字节连接成一个bytearray,以便在 HTTP 发布请求中发送它。

我能想到的最有效的方法是创建一个足够大的bytearray对象,然后将所有 numpy 数组中的字节连续写入其中。

代码将如下所示:

该方法tobytes()不是零拷贝方法。它将 numpy 数组的原始数据复制到一个bytes对象中。

在 python 中,缓冲区允许访问内部原始数据值(这在 C 级别称为协议缓冲区) Python 文档;numpy 在 numpy1.13 中有这种可能性,该方法称为getbuffer() link。然而,这种方法已被弃用!

这样做的正确方法是什么?