python - 带有评论的空类与通过相同?

标签 python

这些是等价的吗?

class Empty : pass

class Empty:
    '''
    This class intentionally left blank
    '''

第二个似乎更易读,可以将 pass 放在最后,但似乎没有必要。

评论是否被视为通过

最佳答案

您的两个代码几乎 等同,但不完全等同。 pass只是一个空操作。 docstring 几乎也是一个空操作,但它向您的类对象添加了一个 __doc__ 属性,因此存在细微差别。

在功能上等同于使用 pass 的版本是使用 Ellipsis又名 ...:

class Empty: ...

在这种情况下,... 没有什么特别之处。您未分配的任何预先存在的对象都可以正常工作。例如,您可以将 ... 替换为 None1True 等。选择 ... 是一种流行的替代方法,因为它更美观。按照惯例,它表示要填充的 stub ,而 pass 通常表示故意不执行任何操作。

像那样使用 ... 将在 Python 2 中引发 SyntaxError。您可以改用命名的 Ellipsis 对象,但那是几乎没有那么漂亮。

您还可以找到 this question关于 passreturn None 在有趣的函数中的等价性。

关于python - 带有评论的空类与通过相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49754137/

相关文章:

python - 如何知道哪一行在python中给出错误?

python - 使用Python AudioTools编辑Wave文件样本

python - 无法将抓取的数据从列表转换为常规字符串

python - wordcloud 词不适合掩码

python - 在将 Selenium WebDriver 与 Python 结合使用时处理 Firefox 不响应?

python - Wagtail ModelAdmin 出现 list_filter 错误 : FieldDoesNotExist: Region has no field named 'p'

javascript - 将变量从js代码传递到db中的flask或类似的东西

python - tensorflow 错误。 CUDA 驱动程序版本不足以满足 CUDA 运行时版本

python - 局部变量和全局变量的区别

python - 在双 for 循环 python 中打印字符串的每一行时出现问题