Python中__doc__和__name__属性分别代表什么?

2026-05-24 17:382阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计648个文字,预计阅读时间需要3分钟。

Python中__doc__和__name__属性分别代表什么?

python一、__doc__属性前言:__doc__为Python模块的内置属性【使用方法名.__doc__调用】__doc__=模块字符串,包含模块文档

编写文档字符串这是模块的文档字符串,它通常放在Python文件的顶部,包含三个引号包裹的字符串内容。

一、__doc__属性

前言

__doc__为python模块的内置属性,__doc__为模块字符串,模块字符串写在Python文件的第一行,三个引号包含起来的字符串。

编写文档字符串的原因

因为规范的书写文档字符串可以通过sphinx等工具自动生成文档。

文档字符串的风格

①plain

# Plain
def foo1(a, b):
"""

"""
return a + b


if __name__ == '__main__':
print(foo1.__doc__)

运行结果:

②Epytext

# Epytext
def foo(a, b):
"""
@param a:
@param b:
@return:
"""
return a + b


if __name__ == '__main__':
print(foo.__doc__)

运行结果:

③reStucturedText

# reStructuredText
def foo2(a, b):
"""
:param a:
:param b:
:return:
"""
return a + b


if __name__ == '__main__':
print(foo2.__doc__)

运行结果:

④Numpy

# Numpy
def foo3(a, b):
"""
Parameters
----------
a
b

Returns
-------

"""


if __name__ == '__main__':
print(foo3.__doc__)

运行结果:

⑤Google

# Google
def foo4(a, b):
"""
Args:
a:
b:

Returns:

"""
return a + b


if __name__ == '__main__':
print(foo4.__doc__)

运行结果:

⑥Pycharm设置

settings->Tools->python integrated tools ->Docstrings->Docstring format

二、__name__属性

①__name__ 是属于 python 中的内置类属性,代表对应程序名称。

②当__name__在当前执行的文件中使用时,它的值为__main__;但是当__name__在被调用的模块中时,其值为被调用文件所在的路径。

③__name__内置属性的实际应用。

在编写python程序时,经常是功能模块和业务逻辑模块分离,在写功能函数时,经常要进行调试函数是否正常,此时可以直接在功能模块最下面加上:

if __name__ == '__main__':
# 需要调试的内容
pass

这样就可以在下方直接来测试函数的功能了。

Python中__doc__和__name__属性分别代表什么?

同时在其他模块来调用这些函数时,由于此时if语句不成立,所以此时将不会执行下面的代码块;也就是说在在调用其他模块时,被调用的模块下方的if函数将不会被执行从而不会影响整个程序的正常使用。

去期待陌生,去拥抱惊喜。

本文共计648个文字,预计阅读时间需要3分钟。

Python中__doc__和__name__属性分别代表什么?

python一、__doc__属性前言:__doc__为Python模块的内置属性【使用方法名.__doc__调用】__doc__=模块字符串,包含模块文档

编写文档字符串这是模块的文档字符串,它通常放在Python文件的顶部,包含三个引号包裹的字符串内容。

一、__doc__属性

前言

__doc__为python模块的内置属性,__doc__为模块字符串,模块字符串写在Python文件的第一行,三个引号包含起来的字符串。

编写文档字符串的原因

因为规范的书写文档字符串可以通过sphinx等工具自动生成文档。

文档字符串的风格

①plain

# Plain
def foo1(a, b):
"""

"""
return a + b


if __name__ == '__main__':
print(foo1.__doc__)

运行结果:

②Epytext

# Epytext
def foo(a, b):
"""
@param a:
@param b:
@return:
"""
return a + b


if __name__ == '__main__':
print(foo.__doc__)

运行结果:

③reStucturedText

# reStructuredText
def foo2(a, b):
"""
:param a:
:param b:
:return:
"""
return a + b


if __name__ == '__main__':
print(foo2.__doc__)

运行结果:

④Numpy

# Numpy
def foo3(a, b):
"""
Parameters
----------
a
b

Returns
-------

"""


if __name__ == '__main__':
print(foo3.__doc__)

运行结果:

⑤Google

# Google
def foo4(a, b):
"""
Args:
a:
b:

Returns:

"""
return a + b


if __name__ == '__main__':
print(foo4.__doc__)

运行结果:

⑥Pycharm设置

settings->Tools->python integrated tools ->Docstrings->Docstring format

二、__name__属性

①__name__ 是属于 python 中的内置类属性,代表对应程序名称。

②当__name__在当前执行的文件中使用时,它的值为__main__;但是当__name__在被调用的模块中时,其值为被调用文件所在的路径。

③__name__内置属性的实际应用。

在编写python程序时,经常是功能模块和业务逻辑模块分离,在写功能函数时,经常要进行调试函数是否正常,此时可以直接在功能模块最下面加上:

if __name__ == '__main__':
# 需要调试的内容
pass

这样就可以在下方直接来测试函数的功能了。

Python中__doc__和__name__属性分别代表什么?

同时在其他模块来调用这些函数时,由于此时if语句不成立,所以此时将不会执行下面的代码块;也就是说在在调用其他模块时,被调用的模块下方的if函数将不会被执行从而不会影响整个程序的正常使用。

去期待陌生,去拥抱惊喜。