什么是存储在Python对象的优点和缺点numpy.array与dtype='o'与使用list(或list的list等,在更高的维度)?
在这种情况下,numpy数组是否更有效?(似乎他们无法避免间接,但在多维情况下可能更有效.)
切片与NumPy数组的工作方式不同.NumPy文档专门讨论了这个主题. 要突出一些要点:
list通过为切片指定不同长度的序列来插入和删除项目,而NumPy会引发错误.演示:
>>> a = np.arange(4, dtype=object).reshape((2,2))
>>> a
array([[0, 1],
[2, 3]], dtype=object)
>>> a[:,0] #multidimensional slicing
array([0, 2], dtype=object)
>>> b = a[:,0]
>>> b[:] = True #can assign scalar
>>> a #contents of a changed because b is a view to a
array([[True, 1],
[True, 3]], dtype=object)
Run Code Online (Sandbox Code Playgroud)
此外,NumPy数组通过支持它们的对象数组(例如fraction.Fraction)提供方便的数学运算.
| 归档时间: |
|
| 查看次数: |
8982 次 |
| 最近记录: |