m45*_*t3r 8 python python-2.7 python-3.x
我正在为当前唯一的Python 2项目贡献代码,以允许它在Python 3上运行.我应该进行以下导入:
from __future__ import (unicode_literals, print_function,
absolute_imports, division)
Run Code Online (Sandbox Code Playgroud)
在项目的每个文件上或只使用我在每个文件上需要的文件?
据我所知,对此没有任何明确的约定,但是我倾向于将它们全部添加到每个文件中。
您可能知道您现在__future__正在使用哪些功能,但是如果将来文件被修改并且突然需要其他功能或不再需要某个功能怎么办?
放置所有导入始终可以让您编写类似 python3 的代码,这意味着您不必准确记住特定文件中打开/关闭的功能。你只要写python3就可以了。
另一方面,在选择要导入的功能时,您必须根据文件中活动的功能调整每个文件的编码方式。
更喜欢第一个解决方案的另一个原因是 IDE 通常提供一种为新文件指定模板的方法,这意味着您甚至不必记住自己添加所有导入,IDE 会为您完成此操作。
这一推理只有一个问题:添加导入不会破坏代码。这显然是无法保证的。然而,您应该已经完成了必须做的更改以将软件移植到 python3,因此它不应该增加移植软件所需的时间。
| 归档时间: |
|
| 查看次数: |
472 次 |
| 最近记录: |