gpt4 book ai didi

Python风格问题: Support class as inner class?

转载 作者:太空宇宙 更新时间:2023-11-03 13:23:47 24 4
gpt4 key购买 nike

我喜欢使用语言内置的结构来组织我的代码。但有一种情况我无法保持一致,仅仅是因为我没有看到明确的最佳方法。它与支持类有关,即由另一个类在内部专门使用的类:我是将它们设为内部类还是单独的类。

内部类:

class Complicated:
class Utility1:
pass
class Utility2:
pass
pass

单独的类:

class Complicated:
pass

class Utility1:
pass

class Utility2:
pass

内部类的优点是可以在唯一使用它们的类中发挥作用。但问题是由于缩进,我编写代码的空间变少了。

外部类既没有优势也没有劣势。我厌倦了每次写支持类(class)时总是花费一些精力,想知道这个愚蠢的问题。

我的问题是,是否有任何具有丰富 Python 经验的人可以就此是否有最佳实践提出建议?即使答案是“视情况而定”,但如果是比我更有经验的人,我将不胜感激。

最佳答案

我会建议

class Complicated:
pass

class _Utility1:
pass

class _Utility2:
pass

并将所有这些都放在它自己的模块中。前导 _ 表示实用程序类仅供内部使用(而且就其值(value)而言,它们不会被 from module import * 导入;但我不无论如何都是这样)。

编辑:引用自PEP 8 :

Classes for internal use have a leading underscore in addition.

关于Python风格问题: Support class as inner class?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4735013/

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