Python 3 中导入语句的演变
Python 3 对导入语句进行了重大更改,以提高清晰度并避免歧义。
亲戚导入
在 Python 2 中,包内的隐式相对导入被广泛使用。这意味着模块可以从同一包中的其他模块导入,而无需指定路径。例如:
# Python 2 from my_module import MyClass
但是,在 Python 3 中,不再支持相对导入。相反,必须使用显式导入或绝对导入。这有助于防止混淆导入是相对导入还是绝对导入。
# Python 3 from .my_module import MyClass
星形导入
星形导入,使用 * 从模块导入所有符号,分别是Python 2 在模块和函数级别都允许。但是,在 Python 3 中,星型导入仅允许在模块级别进行。这有助于提高可读性并减少潜在的命名空间冲突。
例如,在 Python 2 中,允许使用以下内容:
# Python 2 def my_function(): from math import *
在 Python 3 中,必须将其更改为:
# Python 3 def my_function(): from math import sin, degrees
通过了解 import 语句中的这些变化,开发人员可以确保他们的代码与 Python 3 兼容并避免歧义和潜在的问题错误。
以上是Python 3 导入语句与 Python 2 相比有何变化?的详细内容。更多信息请关注PHP中文网其他相关文章!