首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

怎么提取模块的_doc_字符串

2012-03-27 
求教:如何提取模块的__doc__字符串?这是《Python核心编程》(中文第二版)第9章的第9个练习,题目是:进入Python

求教:如何提取模块的__doc__字符串?
这是《Python   核心编程》(中文第二版)第9章的第9个练习,题目是:

进入Python标准库所在的目录。检查每个.py文件看是否有__doc__字符串,如果有,对其格式进行适当的归类整理。你的程序执行完毕后,应该会生成一个漂亮的清单。里面列出哪些模块有文档字符串,以及文档字符串的内容,清单最后附上那些没有文档字符串模块的名字。

首先我用   glob   生成了类似于/usr/lib64/python2.7/site-packages/abc.py的文件名列表(带路径的),下一步准备提取文档字符串,这个步骤我有两个思路,可是都卡住了:

方法一:   name   =   由列表中提取的文件名,然后   import   name,接着输出   name.__doc__   ,可是   import   总是要求原始的模块名,用   name   变量来代替会出错,不知道这条路能否行得通?

方法二:open   文件,提取第一次出现的 " " "之间的内容,由于这些内容会有分行,file.readlines   将其放入了多个元素,而不是整个 " " "之间的内容,请问这个怎么解决,难不成要通过判断 " " "的索引,然后切片、合并?

这是我目前只能想到的办法,初学Python,实在没招了,请指教!

[解决办法]
1. glob只能遍历单层目录。
2. __import__可以接受变量
3. 读文件有很多方法。不知道你的书里到第九章都提了那些。就算用readlines也可以啊,自己一边遍历一遍记录'''里的行,再拼起来就行了。

热点排行