1
3
Psyco ?虽然它可能不会给你带来和赛通一样大的速度提升,但它比赛通花费的工作要少。我当然会先试试。 |
2
2
如果您不局限于严格的python,我建议您使用cython。它可以允许索引的静态类型和以C速度高效、直接地访问numpy数组的底层数据缓冲区。 查看以下网站的简短教程/示例: http://wiki.cython.org/tutorials/numpy 在这个例子中,它执行的操作非常类似于您正在执行的操作(递增索引、访问numpy数组的各个元素),将类型信息添加到索引变量中会将时间缩短一半。通过给numpy数组提供类型信息,向它们添加有效的索引,可以将时间缩短到原始数组的1%左右。 大多数python代码已经是有效的cython了,所以您可以只使用您拥有的代码,并在需要的地方添加注释和类型信息,以提高速度。
我怀疑你会从添加类型信息中得到最多的索引
|
3
1
下面的指南比较了几种不同的优化Python中数字代码的方法: 这有点过时了,但仍然有用。请注意,它指的是Pyrex,正如Sancho所提到的那样,Pyrex从那时起就被用于创建Cython项目。
|
serlingpa · 如何准备我的数据以避免无法推断频率 1 年前 |
Guillaume · 使用操作从Python列表创建numpy数组 2 年前 |
mikanim · 改进二维余弦函数的numpy功能 2 年前 |
Klimt865 · 在Python中将数组列表转换为列表列表 2 年前 |
Lynn · 如果列包含Python中的特定字符串,则从列中删除值 2 年前 |
Jan Hrubec · 选择numpy数组的前n个元素 2 年前 |