小编bFi*_*ig8的帖子

python:二进制文件的正则表达式搜索模式(半个字节)

我使用以下正则表达式模式在二进制文件中搜索0xDEAD4FAD:

my_pattern = re.compile(b"\xDE\xAD\x4F\xAD")
Run Code Online (Sandbox Code Playgroud)

但是如何推广搜索模式以搜索0xDEAD4xxx?似乎无法切入半个字节

python regex binaryfiles

6
推荐指数
1
解决办法
7224
查看次数

将Modelsim模拟时间瞬间作为字符串变量?

我知道在使用时report,severityModelsim会将模拟时刻作为其消息的一部分显示给控制台.无论如何,这个时刻作为一个字符串变量"获取",所以我可以用这个"时间"字符串打印我自己的消息?

vhdl

5
推荐指数
1
解决办法
1万
查看次数

在Python 3中将查找表应用于NUMPY数组的最有效方法

我试图尽可能多地使用numpy数组来提高性能.

我有一个查找表,例如MYLUT = [0,2,5,7,8,12,-1,...,229]

我有一个numpy数组MYARRAY与uint8的形状值(300,200000)

将查找表应用于MYARRAY中所有元素的最快方法是什么?

目前我只是使用for循环:

for i in range(300) :
    for j in range(200000) :
        MYARRAY[i][j] = MYLUT[MYARRAY[i][j]]
Run Code Online (Sandbox Code Playgroud)

我可以做得更好吗?或者这已经是用Python做到这一点的最快方法了?

arrays numpy multidimensional-array python-3.x

3
推荐指数
2
解决办法
536
查看次数

Numpy 通过交错连接数组

我有 4 个数组,我想将它们连接成一个交错的数组。我该怎么做呢?

>>> import numpy as np
>>> a = np.tile(0,(5,2))
>>> b = np.tile(1,(5,2))
>>> c = np.tile(2,(5,2))
>>> d = np.tile(3,(5,2))
>>> e = np.concatenate((a,b,c,d),axis=1)
>>> e
    array([[0, 0, 1, 1, 2, 2, 3, 3],
           [0, 0, 1, 1, 2, 2, 3, 3],
           [0, 0, 1, 1, 2, 2, 3, 3],
           [0, 0, 1, 1, 2, 2, 3, 3],
           [0, 0, 1, 1, 2, 2, 3, 3]])
Run Code Online (Sandbox Code Playgroud)

这仅给出了串联。

然而,我想要的输出是:

>>> desired_output
    array([[0, 1, 2, 3, 0, 1, …
Run Code Online (Sandbox Code Playgroud)

python arrays numpy

3
推荐指数
1
解决办法
1776
查看次数

使用 Python numpy einsum 获取 2 个矩阵之间的点积

刚遇到这个:

用 Scipy 计算两个矩阵的行式点积的矢量化方法

这个 numpy.einsum 真的很棒,但使用起来有点混乱。假设我有:

import numpy as np
a = np.array([[1,2,3], [3,4,5]])
b = np.array([[0,1,2], [1,1,7]])
Run Code Online (Sandbox Code Playgroud)

我将如何使用 einsum 中的“ij”来获得 a 和 b 之间的“交叉点积”?

使用这个例子基本上我想计算的点积

[1,2,3] 和 [0,1,2]

[1,2,3] 和 [1,2,7]

[3,4,5] 和 [0,1,2]

[3,4,5] 和 [1,1,7]

并以 [[8,26],[14,42]] 结束

我知道如果我使用

np.einsum("ij,ij->i",a,b)
Run Code Online (Sandbox Code Playgroud)

我最终会得到 [8, 42] 这意味着我缺少“交叉”元素

python numpy matrix dot-product

2
推荐指数
1
解决办法
4287
查看次数