【问题标题】:Numpy: Difference between a[i][j] and a[i,j]Numpy:a[i][j] 和 a[i,j] 之间的区别
【发布时间】:2013-05-06 11:31:48
【问题描述】:

来自 Python 和 C++/Java 等编程语言的列表背景,习惯于使用 a[i][j] 方法提取元素的符号。但是在NumPy 中,通常是a[i,j]。这两个都将返回相同的结果。

两者的根本区别是什么,应该首选哪个?

【问题讨论】:

    标签: python list numpy


    【解决方案1】:

    主要区别在于a[i][j] 首先在a[i] 上创建一个视图,然后对该视图进行索引。另一方面,a[i,j] 直接索引到a,使其更快:

    In [9]: a = np.random.rand(1000,1000)
    
    In [10]: %timeit a[123][456]
    1000000 loops, best of 3: 586 ns per loop
    
    In [11]: %timeit a[123,456]
    1000000 loops, best of 3: 234 ns per loop
    

    因此,我更喜欢后者。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-03
      • 2013-08-19
      • 2017-09-10
      • 2021-04-09
      • 2019-04-19
      • 2012-10-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多