例如,如果我将数组定义为my_array = np.array([1,2,3])
,
之间有什么区别
max(my_array)
和
my_array.max()
?
这是其中一种是另一种的“语法糖”吗?另外,为什么第一个可以使用Python列表,而第二个却不能呢?
答案 0 :(得分:1)
正如人们在对您的问题的评论中所说的那样,他们所指的是两个不同的功能。
max(my_array)
是内置的Python函数,可用于python中的任何序列数据。
与此相反,my_array.max()
引用了对象内的一个函数。在这种情况下,my_array来自Numpy数组类。 Numpy无法识别此功能的列表数据类型。但是,无论何时使用numpy数据序列,此方法都将比max(my_array)
更快。
根据经验,如果变量具有variable.someMethod()
,则该函数是方法,并且特定于对象类。如果将该函数称为function(variable)
,则该函数要么是python发行版的一部分,要么是您正在使用的文件/类。