2.9 … 和pass
在Python中pass语句是用来在语法上需要一个语句的地方占位的。它不会执行任何操作。
...是一个特殊的值,表示省略或未完成的代码。它可以用来实现抽象基类,也可以用来在语法上需要一个语句的地方占位,通常情况下,...可以取代pass。
我们来看一下...的相关属性:
from icecream import ic
ic(type(...))
print(dir(...))
ic(... == ...)
ic(... == None)
ic(... is None)
ic(... is ...)
14:50:10|> type(…): <class ‘ellipsis’>
[‘class’, ‘delattr’, ‘dir’, ‘doc’, ‘eq’, ‘format’, ‘ge’, ‘getattribute’, ‘gt’, ‘hash’, ‘init’, ‘init_subclass’, ‘le’, ‘lt’, ‘ne’, ‘new’, ‘reduce’, ‘reduce_ex’, ‘repr’, ‘setattr’, ‘sizeof’, ‘str’, ‘subclasshook’]
14:50:10|> … == …: True
14:50:10|> … == None: False
14:50:10|> … is None: False
14:50:10|> … is …: True
pass、...可以用来在循环或函数中占位,表示未来要添加代码。例如:
for x in range(10):
pass # do nothing
for x in range(10):
... # do nothing
...也可以用来实现抽象基类,表示子类必须重写的方法。例如:
from abc import ABC, abstractmethod
class Animal(ABC):
@abstractmethod
def make_sound(self):
...
class Dog(Animal):
def make_sound(self):
print("Woof")
在Python中,pass语句用于占位,不执行任何操作,而...是ellipsis类型,常用于表示省略或未完成的代码。它们都可以在需要语句的地方作为占位符。文章提到了...在抽象基类中的应用,表示子类必须重写的方法。

2736

被折叠的 条评论
为什么被折叠?



