Python Numpy数组理解

Python Numpy数组理解,python,numpy,list-comprehension,Python,Numpy,List Comprehension,有没有办法在Python中理解numpy数组?我看到的唯一方法是使用列表理解,然后将结果转换为numpy数组,例如np.arraylist理解。我希望有一种方法可以直接使用numpy数组,而不使用列表作为中间步骤 此外,是否可以重载列表运算符,即[和],以便结果是一个numpy数组,而不是列表。这里的一个基本问题是numpy数组是静态大小的,而python列表是动态的。由于列表理解无法预先知道返回列表的长度,因此必须在整个生成过程中维护动态列表。这里的一个基本问题是numpy数组的大小是静态的,

有没有办法在Python中理解numpy数组?我看到的唯一方法是使用列表理解,然后将结果转换为numpy数组,例如np.arraylist理解。我希望有一种方法可以直接使用numpy数组,而不使用列表作为中间步骤


此外,是否可以重载列表运算符,即[和],以便结果是一个numpy数组,而不是列表。

这里的一个基本问题是numpy数组是静态大小的,而python列表是动态的。由于列表理解无法预先知道返回列表的长度,因此必须在整个生成过程中维护动态列表。

这里的一个基本问题是numpy数组的大小是静态的,而python列表是动态的。由于列表理解无法预先知道返回列表的长度,因此必须在整个生成过程中维护动态列表。

您可以从生成器表达式创建numpy数组。您只需提前指定数据类型:

import numpy as np
x = np.fromiter(range(5), dtype=int)
y = np.fromiter((i**2 for i in range(5)), dtype=int)

可以从生成器表达式创建numpy数组。您只需提前指定数据类型:

import numpy as np
x = np.fromiter(range(5), dtype=int)
y = np.fromiter((i**2 for i in range(5)), dtype=int)

是否有可能重载列表运算符,即[and],从而使结果是一个numpy数组,而不是列表。-听起来是一个非常糟糕的想法,甚至不确定数组理解需要什么。你想从中获得什么功能?Python列表是Python语言定义的一部分,Numpy数组不是;它们是Python语言所不了解的第三方库的一部分。尽管Python在某些领域已经变得流行和有用,但Python最初设计时从未考虑过科学计算。问题是:为什么要这样做?是否可能重载列表运算符,即[和],所以结果是一个numpy数组,而不是一个列表。-听起来像是一个非常糟糕的想法,甚至不确定数组理解需要什么。你想从中获得什么功能?Python列表是Python语言定义的一部分,Numpy数组不是;它们是Python语言所不了解的第三方库的一部分。尽管Python在某些领域已经变得流行和有用,但Python最初设计时从未考虑过科学计算。问题是:为什么要这样做?