我是一名 Java 程序员,我总是为类创建单独的文件,我正在尝试学习 python,我想正确地学习它。在 python 中将类放在不同的文件中是否成本很高,这意味着一个文件只包含一个类。我在一篇博客中读到它的成本很高,因为.
运算符的解析发生在 python 的运行时(它发生在 Java 的编译时)。
注意:我确实在其他帖子中读过我们可以将它们放在单独的文件中,但他们没有提到它们是否以任何方式更昂贵
我是一名 Java 程序员,我总是为类创建单独的文件,我正在尝试学习 python,我想正确地学习它。在 python 中将类放在不同的文件中是否成本很高,这意味着一个文件只包含一个类。我在一篇博客中读到它的成本很高,因为.
运算符的解析发生在 python 的运行时(它发生在 Java 的编译时)。
注意:我确实在其他帖子中读过我们可以将它们放在单独的文件中,但他们没有提到它们是否以任何方式更昂贵
它的成本略高,但不会达到您可能关心的程度。您可以通过执行以下操作来抵消此额外费用:
from module import Class
这样该类将被分配给本地命名空间中的变量,这意味着它不必通过模块进行查找。
然而,实际上,这不太重要。查找这样的东西的成本将会很小,你应该专注于让你的代码最易读。跨模块和包拆分类,这对您的程序来说是合乎逻辑的,并且可以使它们保持清晰。
例如,如果您在循环中重复使用某些东西,这对您的程序来说是一个瓶颈,您可以将它分配给该循环的局部变量,例如:
import module
...
some_important_thing = module.some_important_thing
#Bottleneck loop
for item in items:
#module.some_important_thing()
some_important_thing()
请注意,这种优化不太可能是重要的事情,您应该只在有证据证明需要这样做的地方进行优化。