Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python脚本中获得模块函数的帮助_Python_Module_Operating System - Fatal编程技术网

如何在python脚本中获得模块函数的帮助

如何在python脚本中获得模块函数的帮助,python,module,operating-system,Python,Module,Operating System,如何在python脚本中获得模块函数的帮助,我尝试了以下内容 import os # Stored all the function in a variable. os_module= dir(os) function_module_dict = {} # trying to use help in script for function_name in os_module: print function_name function_module_dict[functi

如何在python脚本中获得模块函数的帮助,我尝试了以下内容

import os 

# Stored all the function in a variable.
os_module= dir(os)

function_module_dict = {}
# trying to use help in script 

for function_name in os_module:
    print function_name
    function_module_dict[function_name] = help(os.function_name)

print   function_module_dict
我犯了以下错误


AttributeError:“module”对象没有“function\u name”属性

调用
帮助(os.function\u name)
时会出现问题。这里,
os.function\u name
真正的意思是“os的
function\u name
字段”,而不是“以
os
function\u name
的值命名的函数”


您需要使用
getattr(操作系统,函数名)
。然后,将对变量
function\u name
进行求值。

os。function\u name
尝试从对象
os
访问不存在的属性,该属性的字面名称为
'function\u name'

对于动态属性查找,可以使用
getattr
。您可以使用以下代码

import os
import pydoc

help_dict = {}
for function_name in dir(os):
    help_dict[function_name] = pydoc.render_doc(getattr(os, function_name))

help
函数返回的是
None
,而不是docstring。要以字符串形式获取帮助文本,请使用
pydoc.render_doc

@MatthieuMoy提示:在另一个答案被接受后,强迫新用户接受您自己的答案是违反礼仪的。呃,我不是在另一个答案被接受后才推的,我写评论时只有我的答案。我刚刚回复了一条评论,该评论说我的回答是非正式的正确答案,但有一种方法可以用stackoverflow正式标记。@MatthieuMoy我的回答被接受了一段时间,但在你写下评论后就被拒绝了。这没什么大不了的,我不会抱怨的,这是OP的选择。我只是想告诉你,我认为这是不恰当的行为。