9.9 Python 文档字符串

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

import os
#import pdb
path2search = ‘/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7‘
modules2check = []
def findPythonFiles(path2search):
	for eachItem in os.listdir(path2search):
		pathOfEachItem = os.path.join(path2search, eachItem)
		if os.path.isdir(pathOfEachItem):
			p = os.path.join(path2search, eachItem)
			#pdb.set_trace()
			findPythonFiles(pathOfEachItem)
		else:
			if os.path.splitext(eachItem)[1] == ‘.py‘:
				modules2check.append(os.path.join(path2search,eachItem))
	return modules2check
if __name__ == ‘__main__‘:
	tempList = []
	modules2check = findPythonFiles(path2search)
	for eachPyModule in modules2check:
		f = open(eachPyModule)
		isDoc = False
		for eachLine in f:
			# the 4 if or elif below can‘t be reordered.
			# check __doc__ like r"""sdfdsf"""
			if (eachLine.startswith(‘r"""‘) or eachLine.startswith(‘"""‘)) and len(eachLine) > 5 and eachLine.rstrip().endswith(‘"""‘):
				tempList.append(eachLine)
				break
			# check the 1st line of __doc__ like r"""sdfsdf
			elif (eachLine.startswith(‘r"""‘) or eachLine.startswith(‘"""‘)) and isDoc == False:
				isDoc = True
				tempList.append(eachLine)
			# check the last line of __doc__ like sdfsdf"""
			elif eachLine.rstrip().endswith(‘"""‘) and isDoc == True:
				tempList.append(eachLine)
				isDoc = False
				break
			# check content within r""" and """"
			elif not (eachLine.startswith(‘r"""‘) or eachLine.startswith(‘"""‘)) and isDoc == True:
				tempList.append(eachLine)
		# write name of module that doesn‘t have __doc__ into file hasnodoc.txt
		else:
			f2 = open("hasnodoc.txt","a+")
                       	f2.write(‘Name: ‘ + eachPyModule + ‘\n\n‘)
                       	f2.close()
                       	tempList = []
		# write name and content of module that has __doc__ into file hasdoc.txt
		if tempList != []:
			f1 = open("hasdoc.txt","a+")
			f1.write(‘Name: ‘ + eachPyModule + ‘\n\n‘)
			f1.writelines(tempList)
			f1.close()
			tempList = []

  

时间: 2024-12-09 11:55:35

9.9 Python 文档字符串的相关文章

python文档字符串(函数使用说明)

关键字: 函数说明.help()函数 1.效果图: 2.代码: # 文档字符串( doc str) 是 函数使用说明 # 用法: 在函数第一行写一个字符串 def fn(*nums): ''' 函数的作用: 计算任意数值的总和 函数的参数: *nums 会接受所有传进来的值,保存到一个元组中(装包) ''' print(nums,type(nums)) #定义一个变量,用来保存总和 result = 0 for n in nums: result += n return result print

python文档字符串

#coding=utf-8 #文档字符串def d(i,j): """这个函数实现了一个乘法运算. 函数会返回一个乘法运算的结果.""" k=i*j return k print d.__doc__#文档字符串的调用help(d)#文档字符串的调用

[python]文档字符串

文档字符串可以在运行时访问,也可以用来自动生成文档. 输入: def foo(): print "This is a doc string" return True foo() 运行结果: This is a doc string

零基础学python-14.2 python的文档资源:文档字符串

这一章节我们来说说文档字符串:__doc__ 文档字符串其实也是注释的一种,但是它一般放在模块文件.函数或者类语句的顶部,主要用来说明它们是干什么的,为什么这样做 python会自动封装这些文字,放到__doc__属性里面 >>> def test(): '这是一个测试方法' print('hello world') >>> test.__doc__ '这是一个测试方法' >>> >>> class Test(): '这是一个测试类'

Python基础(2):__doc__、文档字符串docString、help()

OS:Windows 10家庭中文版,Python:3.6.4 Python中的 文档字符串(docString) 出现在 模块.函数.类 的第一行,用于对这些程序进行说明.它在执行的时候被忽略,但会 被编译器存放到 模块.函数.类 的__doc__属性中.不过,并非每一个模块.函数.类都有文档字符串. Part 1.自定义模块.函数.类的文档字符串 新建模块dstest.py,存放于Python安装目录下(可以在import模块时被找到): 导入dstest,查看模块dstest及其下的函数d

python 函数的文档字符串 docstrings

函数体的第一行可以是一个可选的字符串文本:此字符串是该函数的文档字符串,或称为docstring.(更多关于 docstrings 的内容可以在 文档字符串一节中找到.)有工具使用 docstrings 自动生成在线的或可打印的文档,或者让用户在代码中交互浏览:在您编写的代码中包含 docstrings 是很好的做法,所以让它成为习惯吧.

Python学习笔记010——函数文档字符串

函数文档字符串documentation string (docstring)是在函数开头,用来解释其接口的字符串.简而言之:帮助文档 包含函数的基础信息 包含函数的功能简介 包含每个形参的类型,使用等信息 是接口设计的重要部分. 注:一个良好的接口不能简单.清晰的表述该函数,则说明该函数还有优化改进的空间 函数文档的使用 必须在函数的首行,经过验证前面有注释性说明是可以的,不过最好函数文档出现在首行 使用三引号注解的多行字符串(当然,也可以是一行),因三引号可以实现多行注解(展示)(''' '

(一)Python入门-5函数:02形参和实参-文档字符串-函数注释-返回值详解

一:形参和实参 [操作]定义一个函数,实现两个数的比较,并返回较大的值. 1 def printMax(a,b): 2 '''实现两个数的比较,并返回最大值!''' 3 if a >b: 4 print(a,'较大值') 5 else: 6 print(b, '较大值') 7 8 printMax(20,30) 9 printMax(30,5) 10 11 #测试文档字符串的使用 12 help(printMax) 13 help(printMax.__doc__) 上面的 printMax 函

征python文档撰写技术员

最近频繁使用python,一些不懂的东西就要查一下,好几次到了官网,查了半天都放弃了,直接google了....哎...被Qt的文档宠坏了...如果有python爱好者和我有一样的想法,希望在有生之年再也不用饱受官网文档的折磨的,请联系我([email protected]),我们一起to make life better. 要求:至少要会英文吧,文笔简练,行文流畅,最好是落笔生花的. 声明:这个一个非盈利活动,具体开工日期等人数凑齐再说,另外提供pythoner职位两枚,工作地点武汉,待遇优厚