Python 什么';df.head()和df.head之间的区别是什么?
在Jupyter笔记本或终端中,df.head和df.head()都可以返回数据帧的输出,但有一些细微的区别。这两个不同表达式之间的根本区别是什么?一般来说,括号在Python中扮演什么角色? 谢谢Python 什么';df.head()和df.head之间的区别是什么?,python,python-3.x,pandas,jupyter-notebook,Python,Python 3.x,Pandas,Jupyter Notebook,在Jupyter笔记本或终端中,df.head和df.head()都可以返回数据帧的输出,但有一些细微的区别。这两个不同表达式之间的根本区别是什么?一般来说,括号在Python中扮演什么角色? 谢谢 >>df.head >>df.head() 日期开盘高收盘低成交量 01-Jun-17153.17153.33152.22153.181640088 2017年6月12日153.58155.45152.89155.4527770715 2017年6月25日154.34154.45153.46153.
>>df.head
>>df.head()
日期开盘高收盘低成交量
01-Jun-17153.17153.33152.22153.181640088
2017年6月12日153.58155.45152.89155.4527770715
2017年6月25日154.34154.45153.46153.9325331662
2017年6月3日153.90155.81153.78154.4526624926
4 7-Jun-17155.02155.98154.48155.3721069647
括号用于调用函数。让我们举一个小例子,使用append
仅在列表中使用它而不使用括号将不会起任何作用,因为它只返回函数本身,但使用括号调用函数:
a = [1]
a.append
print(a)
[1]
a.append(2)
print(a)
[1, 2]
append = a.append
append(3)
print(a)
[1, 2, 3]
仅使用
head
时所看到的情况与此类似。他们只是添加了一些代码来实际调用具有默认值的函数。head
返回一个方法head()
返回数据框中的前5行(默认值)
type(df.head)
<class 'method'>
type(df.head())
<class 'pandas.core.frame.DataFrame'>
类型(测向头)
类型(df.head())
这些不仅仅是“细微差别”。实际上,你根本没有用df.head
取头部
df.head()。您可以看到输出只有5行:
>>> df.head()
Date Open High Low Close Volume
0 1-Jun-17 153.17 153.33 152.22 153.18 16404088
1 2-Jun-17 153.58 155.45 152.89 155.45 27770715
2 5-Jun-17 154.34 154.45 153.46 153.93 25331662
3 6-Jun-17 153.90 155.81 153.78 154.45 26624926
4 7-Jun-17 155.02 155.98 154.48 155.37 21069647
相反,df.head
只是数据帧df
的head
方法的方法对象。实际调用该方法需要括号。方法对象的repr
基本上是
f"<bound method {classname}.{methodname} of {object!r}"
f”
f"<bound method {classname}.{methodname} of {object!r}"