【发布时间】:2017-12-22 11:32:11
【问题描述】:
我们的代码库中都弹出了两个代码
pandas.DataFrame.columns.values.tolist()
pandas.DataFrame.columns.tolist()
这些总是相同的吗?我不确定为什么values 变体会在它出现的位置弹出,似乎直接columns.tolist() 是获取列名所需的全部内容。如果是这种情况,我希望稍微清理一下代码。
自省似乎暗示值只是一些实现细节,即 numpy.ndarray
>>> import pandas
>>> d = pandas.DataFrame( { 'a' : [1,2,3], 'b' : [0,1,3]} )
>>> d
a b
0 1 0
1 2 1
2 3 3
>>> type(d.columns)
<class 'pandas.core.indexes.base.Index'>
>>> type(d.columns.values)
<class 'numpy.ndarray'>
>>> type(d.columns.tolist())
<class 'list'>
>>> type(d.columns.values.tolist())
<class 'list'>
>>> d.columns.values
array(['a', 'b'], dtype=object)
>>> d.columns.values.tolist()
['a', 'b']
>>> d.columns
Index(['a', 'b'], dtype='object')
>>> d.columns.tolist()
['a', 'b']
【问题讨论】: