数据库建立索引语句:Numpy数组索引语法(array indexing python)

关于数据库建立索引语句的问题,在array indexing python中经常遇到, 我正在学习numpy,并且对数组索引中使用的语法感到困惑。例如:

我正在学习numpy,并且对数组索引中使用的语法感到困惑。例如:

arr[2, 3]

这意味着元素在第 3 行和第 4 列的交集。什么混淆了我在方括号内通过逗号分隔不同的索引 (如在函数参数中)。用 python 列表这样做是无效的:

l = [[1, 2], [3, 4]]
l[1, 1]

Traceback(最近的最后一次调用):文件“”,第 1 行,在 TypeError 中:列表索引必须是整数或切片,而不是元组

所以,如果这不是一个有效的 python 语法,numpy 数组如何工作?

0

使用冒号“:”而不是逗号“,”。在切片或索引中使用冒号“:”

In your above example,l = [[1,2],[3,4]]

-& gt;l [0] 为 [1,2],-& gt;l [1] 为 [3,4]

阅读进一步的文档以更好地理解。谢谢

0

在给定的示例中,您将numpy数组与列表列表进行比较,两者之间的主要区别在于numpy数组在形状,其元素的数据类型等方面是可的,而列表可以包含任何其他 python 对象(列表,元组,字符串等)的任意组合。

以这个为例,说你创建一个numpy数组像这样:

arr = np.array([[0, 1], [2, 3], [4, 5]])

在这里,arr的形状在实例化“arr.shape返回(3,2)”之后是已知的,因此您可以使用逗号分隔的方括号轻松索引数组。

l = [[0, 1], [2, 3], [4, 5]]
l[0]   # This returns the list [0, 1]
l[0].append("HELLO")
l[0]   # This returns the list [0, 1, "HELLO"]

列表是非常不可的,因为没有办法知道每个列表元素将返回给您。因此,我们在列表列表中索引特定元素的方法是使用 2 个方括号“例如l[0][0]

如果我们创建了一个非均匀的numpy数组呢?

arr = np.array([[0, 1], [2, 3], [4]])   # Here, you get a Warning! 
print(arr)  # Returns: array([list([0, 1]), list([2, 3]), list([4])], dtype=object)

在这种情况下,您不能使用 [0,0] 索引numpy数组,而是必须使用两个方括号,就像列表列表一样

您还可以查看ndarray的文档以了解更多信息。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(538)
Python中列表和元组的区别:列表和元组有什么区别 (python tubple)
上一篇
Python接口封装:深入的 Python封装
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(55条)