获取python文件的doc字符串

joh*_*aca 5 python docstring

如果我只有文件的名称,有没有办法获取python文件的doc字符串?例如,我有一个名为a.py的python文件.我知道它有一个文档字符串(之前被强制执行)但不知道它的内部结构,即它是否有任何类或主要等?我希望我不会忘记一些非常明显的东西如果我知道它有一个主要功能我可以这样做使用导入

     filename = 'a.py'
     foo = __import__(filename)
     filedescription = inspect.getdoc(foo.main())
Run Code Online (Sandbox Code Playgroud)

我不能这样做:

     filename.__doc__    #it does not work
Run Code Online (Sandbox Code Playgroud)

men*_*gqi 7

import ast

filepath = "/tmp/test.py"

file_contents = ""
with open(filepath) as fd:
    file_contents = fd.read()
module = ast.parse(file_contents)
docstring = ast.get_docstring(module)
if docstring is None:
    docstring = ""

print(docstring)
Run Code Online (Sandbox Code Playgroud)


Mik*_*ton 5

你应该做...

foo = __import__('a')
mydocstring = foo.__doc__
Run Code Online (Sandbox Code Playgroud)

或者更简单......

import a
mydocstring = a.__doc__
Run Code Online (Sandbox Code Playgroud)