python注释里面的冒号有什么作用呢

请问一下各位大佬,我们python写注释的时候,为什么要这个冒号:
比如下面的:param的冒号有什么意思呢,还有最下面的:return:为什么前后都有冒号呢
def genres_multi_hot(genre_int_map):

"""
  电影类型使用multi-hot编码
  :param genre_int_map:genre到数字的映射字典
  :return:
  """
阅读 2.7k
2 个回答

看你之前有过 JS 的相关提问,那我以 JS 举例好了。

这个就类似 JSDoc 里的:

/**
 * 分隔字符串。
 * @param {String} text 待分隔的字符串。
 * @param {String} separator 分隔符。
 * @returns {Array} 包含分隔后字符串的数组。
 */
function splitString(text, separator);

换在 Python 里的话,比较常见的几种风格有:

  • reST(reStructuredText):
"""
分隔字符串。
 
:param text: 待分隔的字符串。
:param separator: 分隔符。
:returns: 包含分隔后字符串的列表。
"""
  • Google:
"""
分隔字符串。
 
Parameters:
 text - 待分隔的字符串。
 separator - 分隔符。
 
Returns:
 包含分隔后字符串的列表。
"""
  • Numpy:
"""
分隔字符串。
 
Parameters
----------
text : string
 - 待分隔的字符串。
separator : string
 - 分隔符。

Returns
-------
list
 包含分隔后字符串的列表。
"""

JSDoc 的规范在 2001 年就有了,现行的规范是 2011 年发布的 JSDoc 3.0。虽然它并不是一个有某个官方组织背书的国际标准(类似于 ECMA 之于 JavaScript、IETF/W3C 之于 HTML 等等),但因为它被 Node.js 官方一开始就采用,随着 Node.js 的流行,JSDoc 也就变得成为某种意义上的“事实标准”,基本主流 IDE 或编辑器均支持 JSDoc 的语法高亮和智能提示,各个流行的第三方库也都会以 JSDoc 的规范来写文档注释。

相比之下,Python 中就并没有一个类似的、被广为接受的统一规范了。

所以自己挑一个喜欢的风格写就好。或者你有自己的注释习惯也可以,只要项目里别混着即可。

没有意义,注释风格的一种

在设置中找到
Tools > Python Integrated Tools
选择 Docstring format

你还能看到很多注释风格

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏