gpt4 book ai didi

python - 我应该向项目中的每个文件添加 __future__ 语句吗?

转载 作者:太空狗 更新时间:2023-10-29 21:08:40 26 4
gpt4 key购买 nike

我正在为一个目前只有 Python 2 的项目贡献代码,以允许它在 Python 3 上运行。我应该输入以下内容吗:

from __future__ import (unicode_literals, print_function,
absolute_imports, division)

在项目的每个文件上还是只在每个文件上使用我需要的文件?

最佳答案

据我所知,对此没有任何明确的约定,但我倾向于将它们全部添加到每个文件中。

您可能知道您现在正在使用哪些__future__功能,但是如果将来文件被修改并且突然需要其他功能或不需要某些功能还有吗?

  • 如果将所有这些都放在每个文件中,那么您已经知道可以用“python3 风格”编写所有内容,并确保不会出现奇怪的错误/错误。如果不使用某个功能,则没有问题。
  • 如果您不这样做,那么您可能会:
    • 忘记添加该功能的导入,即使您知道它是必需的。
    • 没有意识到您实际上需要一项新功能,因为您已经习惯了它并且并不总是记住它是 python3 的功能
    • 忘记删除未使用的功能导入。请注意,这通常需要查看整个文件以确保您不需要某项功能。

放置所有导入始终让您编写类似 python3 的代码,这意味着您不必牢记特定文件中打开/关闭的确切功能。你只需要写 python3。

另一方面,在选择要导入的功能时,您必须根据文件中的事件功能调整每个文件的编码方式。

然而,更喜欢第一种解决方案的另一个原因是,IDE 通常会提供一种方法来指定新文件的模板,这意味着您甚至不必记住自己添加所有导入,IDE 会为你。


这个推理只有一个问题:添加导入不会破坏代码。这显然不能保证。但是,您必须做的更改应该已经完成​​,以便为 python3 移植软件,因此不应增加移植软件所需的时间。

关于python - 我应该向项目中的每个文件添加 __future__ 语句吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22732784/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com