Python 中的注释规范


在Python中,分为单行注释,多行注释,特殊注释

特殊注释:

  #!/usr/bin/env python

  这样的注释意思是:Python告诉LINUX 去哪个路径下找Python的翻译器

  #-*-coding:utf-8-*-

  这样的注释意思是: 告诉Python解释器,如何解释字符串中的编码类型

多行注释:/**/

  一般用于给类文档,函数文档作注释

单行注释:#

 

 

注释要求:

 

  函数和方法注释:

    Args; 列出每个参数的名字, 并在名字后使用一个冒号和一个空格, 分隔对该参数的描述.如果描述太长超过了单行80字符,使用2或者4个空格的悬挂缩进(与文件其他部分保持一致). 描述应该包括所需的类型和含义. 如果一个函数接受*foo(可变长度参数列表)或者**bar (任意关键字参数), 应该详细列出*foo和**bar.

 

    Returns: (或者 Yields: 用于生成器)描述返回值的类型和语义. 如果函数返回None, 这一部分可以省略.

 

    Raises:列出与接口有关的所有异常.

    EXAMPLE:

      

def fetch_bigtable_rows(big_table, keys, other_silly_variable=None): """Fetches rows from a Bigtable.  Retrieves rows pertaining to the given keys from the Table instance  represented by big_table. Silly things may happen if  other_silly_variable is not None.  Args:  big_table: An open Bigtable Table instance.  keys: A sequence of strings representing the key of each table row  to fetch.  other_silly_variable: Another optional variable, that has a much  longer name than the other args, and which does nothing.  Returns:  A dict mapping keys to the corresponding table row data  fetched. Each row is represented as a tuple of strings. For  example:  {'Serak': ('Rigel VII', 'Preparer'),  'Zim': ('Irk', 'Invader'),  'Lrrr': ('Omicron Persei 8', 'Emperor')}  If a key from the keys argument is missing from the dictionary,  then that row was not found in the table.  Raises:  IOError: An error occurred accessing the bigtable.Table object.  """ pass

  类的注释

    类应该在其定义下有一个用于描述该类的文档字符串. 如果你的类有公共属性(Attributes), 那么文档中应该有一个属性(Attributes)段. 并且应该遵守和函数参数相同的格式.

    

class SampleClass(object): """Summary of class here.  Longer class information....  Longer class information....  Attributes:  likes_spam: A boolean indicating if we like SPAM or not.  eggs: An integer count of the eggs we have laid.  """ def __init__(self, likes_spam=False): """Inits SampleClass with blah.""" self.likes_spam = likes_spam self.eggs = 0 def public_method(self): """Performs operation blah."""


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM