x.method()和方法(x)是否等效?

时间:2017-08-16 21:09:52

标签: python pandas

我看到有几种方法可以对对象执行方法。 a.method(),方法(a)。

这是一个例子,

import pandas as pd
data = {'AXP': 86.40, 'CSCO': '122.64', 'BA': '99.44'}
sindex = ['AXP', 'CSCO', 'BA', 'AAPL',]
aSer = pd.Series(data, index = sindex)

# Ex1: First way
> aSer.isnull()
AXP     False
CSCO    False
BA      False
AAPL     True
dtype: bool

# Ex2: Second way
> pd.isnull(aSer)
AXP     False
CSCO    False
BA      False
AAPL     True
dtype: bool

# Ex3: third way
> aSer.isnull
<bound method NDFrame.isnull of AXP       86.4
CSCO    122.64
BA       99.44
AAPL       NaN
dtype: object>

# Ex4: function vs. method 
aList = [3, 5, 2, 4]
sorted(aList) # object in function
aList.sort()  # method

我的理解:
Ex1:&#34;附加&#34;对象的方法。

Ex2:将对象放在函数中。前两种方式总是相同吗?

Ex3:它在这做什么?

Ex4:为什么aList.sorted()无法工作? sorted() vs sort()来自不同的包。

我很困惑为什么这么多事情试图达到同样的目的,同时,并非所有事情都能奏效。

0 个答案:

没有答案