Python中的Julia风格数组
项目描述
julialg
Python中的Julia风格数组
Python库,用于模仿Julia LinearAlgebra数组索引风格和显示格式。
动机和摘要
Julia的LinearAlgebra
包有一些很好的功能,其中一些在Python中更容易模仿。当比较Python代码与Julia代码的结果时,需要在Python的0索引和Julia的1索引之间进行心理切换,这很烦人。此外,Julia的数组看起来更漂亮。
此包将numpy n维数组包装在一个新的类JulArray
中,并允许使用1索引切片(更符合数学直觉)而不是默认的0索引切片(计算机科学惯例)。还改善了数组表示的美丽,类似于Julia的LinearAlgebra包。明确地说,这是一个Python包,旨在将Julia接口中张量的某些优雅之处引入Python环境。
索引
JulArray
类包装了一个numpy.ndarray
,但覆盖了getitem语法以允许使用1索引风格而不是默认的0索引风格。例如
>>> import numpy, julialg
# Create a numpy array
>>> a = numpy.arange(1, 11).reshape((2, 5))
# Create a JulArray from the numpy array
>>> j = julialg.JulArray(a)
# Index the numpy array using 0-indexed syntax
>>> a[0, 0:2]
array([1, 2])
# Index the JulArray using 1-indexed syntax
>>> j[1, 1:3].array
array([1, 2])
注意在上面的示例中,JulArray
能够将int和从1索引表示法到0索引表示法的切片转换为相同的底层numpy数组。
显示
JulArray
覆盖了numpy数组的默认表示,以使其格式更干净(类似于Julia数组)。
>>> julialg.JulArray(numpy.arange(1.0, 11.0).reshape((2, 5)))
2x5 Array{float64,2}
1.0000 6.0000
2.0000 7.0000
3.0000 8.0000
4.0000 9.0000
5.0000 10.0000
项目详情
下载文件
下载适用于您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源代码分发
julialg-0.1.0.tar.gz (3.8 kB 查看散列值)
构建分发
julialg-0.1.0-py3-none-any.whl (4.6 kB 查看散列值)