如何从给定对象获取格式化的方法列表?

时间:2014-09-17 21:57:33

标签: python

我是初学者,到目前为止我在网上找到的答案太复杂了,所以我正在寻找类似于写作的词汇和复杂性的答案。

我在ipython笔记本环境中使用python 2.7,以及由anaconda分发的相关模块,我需要在日常工作中了解特定于库的对象。我在这里使用的情况是一个pandas数据帧对象,但答案必须适用于python或导入模块的任何对象。

我希望能够打印给定对象的方法列表。直接来自我的程序,简洁易读的格式。即使它只是字母顺序列表中的方法名称,也会很棒。更多的细节会更好,基于它做什么的排序很好,但我希望输出看起来像一个表,每个方法一行,而不是大块的文本。我尝试过的是下面的内容,但它失败了,因为它不可读。它在每一行之间放置我的数据副本,它没有格式化。

(我喜欢stackoverflow。我希望有一天会有足够的积分来支持你所有的精彩答案。)

import pandas
import inspect

data_json = """{"0":{"comment":"I won\'t go to school"}, "1":{"note":"Then you must stay in bed"}}"""

data_df = pandas.io.json.read_json(data_json, typ='frame', 
                     dtype=True, convert_axes=True, 
                     convert_dates=True, keep_default_dates=True, 
                     numpy=False, precise_float=False, 
                     date_unit=None)

inspect.getmembers(data_df, inspect.ismethod)

谢谢, - 莎朗

1 个答案:

答案 0 :(得分:0)

创建str类型的对象:

name = "Fido"

按字母顺序列出其所有属性(Python中没有“方法”):

for attr in sorted(dir(name)):
    print attr

获取有关lower(函数)属性的更多信息:

print(name.lower.__doc__)

在交互式会话中,您还可以使用更方便的

help(name.lower)

功能