Python 中的省略号有什么用?

Ash*_*amu 4 python ellipse python-3.x

有人可以帮忙吗,Python 中 Ellipse 的用途是什么,并提供一些示例以及何时使用它?

我对此进行了一些搜索,它可以与函数一起使用:

 def add():
     ...
Run Code Online (Sandbox Code Playgroud)

并在列表中进行切片。

import numpy
n = numpy.arange(16).reshape(2, 2, 2, 2)

print(n)

print('----------------')
print(n[1,...,1])

[[[[ 0  1]
   [ 2  3]]

  [[ 4  5]
   [ 6  7]]]


 [[[ 8  9]
   [10 11]]

  [[12 13]
   [14 15]]]]
----------------
Ellipsis:[[ 9 11]
 [13 15]]
Run Code Online (Sandbox Code Playgroud)

Mas*_*inn 6

最初,省略号文字(就是这样...)非常受限制,在 Python 2 中,它本质上只能用作切片时的哨兵,并且具体执行的操作不是规定性的,完全由容器的反应方式定义(我不知道)认为没有任何标准库容器处理省略号,所以它主要用于 numpy)。

在 Python 3 中,省略号运算符有所放松,旧的用法保留了下来,但它也获得了新的用途,作为 的不太冗长的版本pass,这也是省略号的传统“常规”用法,当您不关心什么时函数体已经或还没有来填充它,你可以直接输入...而不是pass,它基本上是一个无操作,但它看起来更好/更少噪音:

def do_foo():
    pass
Run Code Online (Sandbox Code Playgroud)

相对

def do_foo():
    ...
Run Code Online (Sandbox Code Playgroud)