Python 中的省略号对象
作为一名经验丰富的 Python 开发人员,您可能遇到过 Python 中的三个点...省略号对象。 如果您尝试在 Python 解释器中打印此内容,它将显示一个省略号。
本篇文章将介绍 Python 中省略号对象的使用。
使用省略号作为未编写代码的占位符
省略号对象可以以不同的方式使用。 它主要充当未编写代码的占位符。
假设我们在一个团队中工作,需要定义函数和类。 我们定义了函数和类,但不确定代码,因此我们将三个点(省略号)放在适当的位置。
这将防止 Python 解释器引发任何异常。
请参阅下面的代码。
def fun():
...
print("Use of ellipsis.")
输出:
Use of ellipsis.
上面的示例显示我们将省略号对象作为 fun()
方法中未编写代码的占位符。
使用省略号代替 pass 关键字
当我们想要添加一行代码但不希望执行任何内容时,在 Python 中使用 pass 关键字。 因此,它被用作未编写代码的占位符。
正如所讨论的,我们可以使用省略号对象作为未编写代码的占位符; 因此,我们可以用它来代替 pass 关键字。
我们可以在下面的例子中看到这一点。
def fun1():
...
def fun2():
pass
print("Use of ellipsis.")
输出:
Use of ellipsis.
上面的示例显示,两个函数使用了 pass 和 ellipsis 作为未编写代码的占位符,这表明我们可以将 pass 替换为 ellipsis 对象。
在多维 numpy 数组切片中使用省略号
该对象的另一个重要用途是切片。
切片是指根据索引从对象中提取元素部分的技术。 它是在方括号中完成的。
我们还可以对多维数组执行切片,但我们需要注意数组中的总维度。 省略号可以用作切片表达式中的占位符来忽略给定的维度。
考虑以下代码。
import numpy as np
arr = np.array([[7,5,2,3],[1,8,9,2],[3,2,1,0]])
print(arr[ :,2])
print(arr[...,2])
输出:
[2 9 1]
[2 9 1]
在上面的示例中,请注意不同的切片表达式如何返回相同的结果。 省略号作为切片表达式中的占位符非常有用。
对于二维数组,表达式 arr[...,2]
可以转换为 arr[ : ,2]
,对于三维数组,可以转换为 arr[ :, : , 2]
等等。
使用省略号进行类型提示
在Python 3.5及更高版本中,引入了该单例对象的另一种用途。
类型提示允许我们声明变量、参数和返回值的类型。 我们可以在类型提示中使用省略号来仅提供部分类型。
我们可以像 Tuple[int, ...]
、Callable[...,int]
等一样使用它来帮助类型提示。
总结
最后,我们讨论了 Python 中的省略号对象及其用途。 它通常用作函数和类中未编写代码的占位符。
我们还可以将它用作切片中的占位符来忽略多个维度。 Python 3.5 引入了一种在类型提示中使用省略号的新方法。
相关文章
实现 Python Builder 模式的不同方法
发布时间:2023/06/27 浏览次数:70 分类:Python
-
构建器模式是一种允许对象的创建与其表示分离的模式。 这种模式可以创建和配置复杂的对象而无需继承,这是一种强大但不灵活的方法。
Python 中的互相关
发布时间:2023/06/27 浏览次数:81 分类:Python
-
互相关是一种重要的信号处理方法,用于分析具有不同滞后的两个信号之间的相似性。 您不仅可以了解两个信号的匹配程度,还可以获得它们最相似的时间点或索引。本文将讨论在 Python 中处理
使用 Python Timedelta 月份计算日期
发布时间:2023/06/27 浏览次数:128 分类:Python
-
在本篇文章中,我们将通过 timedelta 学习如何在 Python 中使用日期时间。 我们将了解如何计算当前日期或任何其他日期六个月后的日期。
Python MRO(方法解析顺序)
发布时间:2023/06/27 浏览次数:182 分类:Python
-
多重继承意味着单个子类可以继承多个类,并且子类将被授权访问属性和函数,除非它们不是该特定类的私有属性和函数。 MRO 技术用于搜索正在执行的类的顺序。在这篇文章中,我们将学习
Python 获取主目录
发布时间:2023/06/27 浏览次数:146 分类:Python
-
本篇文章将介绍使用 Python 中的 os.path.expanduser 或 pathlib 库获取主目录的路径。使用 Python 中的 os.path.expanduser 模块获取主目录
Python - 尾部日志文件并比较阻塞和非阻塞尾部函数
发布时间:2023/06/26 浏览次数:176 分类:Python
-
本篇文章概述了 Python 中的 tail() 函数,介绍了它的工作原理并演示了如何尾部日志文件。它还比较了 Python 的阻塞和非阻塞尾部函数并强调了差异。Python tail() 函数概述
逐行分析 Python 代码
发布时间:2023/06/26 浏览次数:115 分类:Python
-
本文介绍了如何逐行分析 Python 代码并获取有关代码执行的有用信息。首先,我们简单介绍一下profiling; 然后,我们将讨论何时使用逐行分析比使用函数基础分析更好。
Python 中的 MIMEMultipart
发布时间:2023/06/26 浏览次数:186 分类:Python
-
在本文中,我们将了解如何在 Python 及其 MIME(多用途互联网邮件扩展)模块的帮助下发送带有附件的电子邮件的有效方法。Python 的 MIMEMultipart、MIMEText 和 MIMEBase 模块
Python 中的自动 ARIMA
发布时间:2023/06/26 浏览次数:127 分类:Python
-
在本文中,我们将了解 Python 中的 Auto ARIMA 及其工作原理。Python 中的自动 ARIMA pmdarima 库中的 auto_arima() 函数有助于确定 ARIMA 模型的最佳参数,并提供拟合的 ARIMA 模型作为结果。