Saturday, August 26, 2006

学习__name__又回顾了一下DocStrings 的__doc__

模块的__name__
每个模块都有一个名称,在模块中可以通过语句来找出模块的名称。这在一个场合特别有用——就如前面所提到的,当一个模块被第一次输入的时候,这个模块的主块将被运行。假如我们只想在程序本身被使用的时候运行主块,而在它被别的模块输入的时候不运行主块,我们该怎么做呢?这可以通过模块的__name__属性完成。
使用模块的__name__
例8.2 使用模块的__name__

if __name__ == '__main__':
print 'This program is being run by itself'
else:
print 'I am being imported from another module'

++++回顾
DocStrings
代码范例
def printMax(x, y):
'''输出最大的2个数.

2个数值必需是整数.'''
x = int(x) # convert to integers, if possible
y = int(y)
if x > y:

print x, 'is maximum'
else:
print y, 'is maximum'
printMax(3, 5)

print printMax.__doc__ #输出函数的 文档字符串
print printMax.__name__ #输出模块名字

在函数的第一个逻辑行的字符串是这个函数的 文档字符串 。注意,DocStrings也适用于模块,我们会在后面相应的章节学习它们。
文档字符串的惯例是一个多行字符串,它的首行以大写字母开始,句号结尾。第二行是空行(实际测试时不是空行也行,可能是个建议吧),从第三行开始是详细的描述。 强烈建议 你在你的函数中使用文档字符串时遵循这个惯例。
你可以使用__doc__(注意双下划线)调用printMax函数的文档字符串属性(属于函数的名称)。请记住Python把 每一样东西 都作为对象,包括这个函数。

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home