max(my_array)和my_array.max()有什么区别

时间:2018-10-26 20:05:14

标签: python numpy methods syntax

例如,如果我将数组定义为my_array = np.array([1,2,3])

之间有什么区别 max(my_array)my_array.max()

这是其中一种是另一种的“语法糖”吗?另外,为什么第一个可以使用Python列表,而第二个却不能呢?

1 个答案:

答案 0 :(得分:1)

正如人们在对您的问题的评论中所说的那样,他们所指的是两个不同的功能。

max(my_array)是内置的Python函数,可用于python中的任何序列数据。

与此相反,my_array.max()引用了对象内的一个函数。在这种情况下,my_array来自Numpy数组类。 Numpy无法识别此功能的列表数据类型。但是,无论何时使用numpy数据序列,此方法都将比max(my_array)更快。

根据经验,如果变量具有variable.someMethod(),则该函数是方法,并且特定于对象类。如果将该函数称为function(variable),则该函数要么是python发行版的一部分,要么是您正在使用的文件/类。