por*_*uod 3 python formatting coding-style
我喜欢使用语言中内置的结构来组织我的代码.但有一种情况我不能保持一致,仅仅是因为我没有看到明确的最佳方式.它是关于支持类,即由另一个类在内部专门使用的类:我是将它们作为内部类还是单独的类.
内部课程:
class Complicated:
class Utility1:
pass
class Utility2:
pass
pass
Run Code Online (Sandbox Code Playgroud)
单独的课程:
class Complicated:
pass
class Utility1:
pass
class Utility2:
pass
Run Code Online (Sandbox Code Playgroud)
内部类具有在使用它们的唯一类中作用域的优点.但问题是由于缩进,我得到的代码空间更少.
外课没有优势也没有劣势.每当我写支持课时,我都厌倦了总是花费精力,想知道这个愚蠢的问题.
我的问题是,任何拥有丰富python经验的人是否可以建议是否有最佳实践?即使答案是"它取决于",如果它有一个比我更有经验的人,我们将不胜感激.
我会建议
class Complicated:
pass
class _Utility1:
pass
class _Utility2:
pass
Run Code Online (Sandbox Code Playgroud)
并将所有这些放在自己的模块中.前导_
表示实用程序类仅供内部使用(对于它的内容,它们不会被导入from module import *
;但我不喜欢这样).
编辑:引自PEP 8:
内部使用的类别还有一个主要的下划线.