文章目录
- 内置常量
- False
- True
- None
- NotImplemented
- Ellipsis
- \_\_debug\_\_
- 命令行界面
内置常量
在 Python 的内置命名空间中存在一些常量,它们具有特定的含义和用途。让我们一起来了解一下这些常量:
False
False
是 bool
类型的假值。它在逻辑运算中通常用于表示逻辑假。尝试给 False
赋值是非法的并会引发 SyntaxError
。
True
True
是 bool
类型的真值。与 False
相反,它表示逻辑真。与 False
类似,给 True
赋值是非法的并会引发 SyntaxError
。
None
None
通常用来表示空值的对象,例如未向某个函数传入默认参数时。尝试向 None
赋值是非法的并会引发 SyntaxError
。None
是 NoneType
类型的唯一实例。
>>> None == None
True
>>> a = None
>>> a == None
True
>>> a is None
True
NotImplemented
NotImplemented
是一个特殊值,通常由双目运算特殊方法(如 __eq__()
、__lt__()
、__add__()
、__rsub__()
等)返回,用于表明该运算没有针对其他类型的实现。它不应在布尔上下文中被求值。NotImplemented
是 types.NotImplementedType
类型的唯一实例。
>>> NotImplemented
NotImplemented
>>> type(NotImplemented)
<class 'NotImplementedType'>
Ellipsis
Ellipsis
是与省略号字面值 ...
相同的特殊值。主要用于与用户定义的容器数据类型的扩展切片语法结合使用。Ellipsis
是 types.EllipsisType
类型的唯一实例。
>>> Ellipsis
Ellipsis
>>> type(Ellipsis)
<class 'ellipsis'>
在 Python 中,Ellipsis(省略号)主要用于与用户定义的容器数据类型的扩展切片语法结合使用。Ellipsis 可以用作切片操作中的占位符,以表示省略的维度。
用于索引多维数组的某些维度:
import numpy as np# 创建一个 3x3x3 的三维数组
arr = np.arange(27).reshape((3, 3, 3))# 获取第一个维度上的所有元素
result = arr[0, Ellipsis]
print(result)
# 输出:
# [[ 0 1 2]
# [ 3 4 5]
# [ 6 7 8]]
用于省略多个维度:
# 创建一个 4x4x4 的三维数组
arr = np.arange(64).reshape((4, 4, 4))# 获取第一个维度和第三个维度上的所有元素
result = arr[Ellipsis, Ellipsis, 1]
print(result)
# 输出:
# [[ 1 5 9 13]
# [17 21 25 29]
# [33 37 41 45]
# [49 53 57 61]]
- 用于在自定义类中扩展切片语法:
class MyList:def __getitem__(self, item):if item == Ellipsis:return "Ellipsis used"else:return "Other slice used"my_list = MyList()print(my_list[Ellipsis]) # 输出:"Ellipsis used"
print(my_list[1:3]) # 输出:"Other slice used"
__debug__
__debug__
是一个布尔常量,如果 Python 没有以 -O
选项启动,则为真值。它通常用于在调试代码时执行特定的调试语句
>>> __debug__
True
命令行界面
这些常量在交互式解释器中使用非常简单。你可以在 Python 的交互式环境中尝试以下操作:
-
quit()
或exit()
:
这两个函数用于退出 Python 解释器。在交互式环境中,你可以直接输入quit()
或exit()
来退出 Python。例如:>>> quit()
或者:
>>> exit()
-
copyright
:
这个常量用于显示 Python 解释器的版权信息。在交互式环境中,你可以直接输入copyright
来查看版权信息。例如:>>> copyrightCopyright (c) 2001-2023 Python Software Foundation.All Rights Reserved.Copyright (c) 2000 BeOpen.com.All Rights Reserved.Copyright (c) 1995-2001 Corporation for National Research Initiatives.All Rights Reserved.Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam.All Rights Reserved.
-
credits
:
这个常量用于显示 Python 解释器的作者信息。在交互式环境中,你可以直接输入credits
来查看作者信息。例如:>>> credits Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousandsfor supporting Python development. See www.python.org for more information.
-
license
:
这个常量用于显示 Python 解释器的许可证信息。在交互式环境中,你可以直接输入license
来查看许可证信息。例如:>>> license Type license() to see the full license text
在执行上述操作时,交互式解释器会相应地显示相应的信息,包括退出提示、版权信息、作者信息和许可证信息。
参考:
https://docs.python.org/zh-cn/3/library/constants.html