小编Joh*_* N.的帖子

在多维numpy数组中对向量进行快速迭代

我正在编写一些python + numpy + cython代码,并试图找到在数组上进行以下迭代的最优雅和有效的方法:

假设我有一个函数f(x,y),它采用形状(3,)的向量x和形状(10,)的向量y,并返回形状(10,)的向量.现在我有两个数组X和Y形状sx +(3,)和sy +(10,),其中sx和sy是两个可以一起广播的形状(即sx == sy,或者轴不同,其中一个长度为1,在这种情况下将重复).我想生成一个形状为zs +(10,)的数组Z,其中zs是带有sy的sx广播的形状.Z中的每个10维向量等于X和Y中相应位置处的向量x和y的f(x,y).

我查看了np.nditer,虽然它与cython一起玩得很好(参见链接页面的底部),但它似乎不允许迭代来自多维数组的向量而不是元素.我也查看了索引网格,但问题是当索引的数量等于数组的维数时,cython索引只是快速的,并且存储为cython整数而不是python元组.

任何帮助是极大的赞赏!

python arrays iterator numpy cython

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

在Python中将十六进制字符转换为int

我正在使用图形库Pyglet做一些绘图,并希望将结果图像作为Python列表(因此我可以将其转换为NumPy数组).

Pyglet给了我一串十六进制字符,如下所示:'\ xff'(表示一个像素的值为255).如何将这样的字符串转换为int?

我尝试过int('\ xff',16),但这不起作用.请注意,根据文档,'\ xnn'被转义并编码为十六进制char,但它并没有告诉我如何将其转换为int.

python numpy pyglet

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

标签 统计

numpy ×2

python ×2

arrays ×1

cython ×1

iterator ×1

pyglet ×1