Python 保存文件路径的枚举

Python enum to hold file paths

我必须处理项目中的一堆 folder/file 路径。因为我在我的项目中多次使用它们,所以我选择将它们存储在变量中。所以,如果需要更改路径,我只需要更改变量值即可。

我目前正在将 pathlib.Path 个对象存储在枚举中,如下例所示。

from pathlib import Path
from enum import Enum

class Paths(Enum):
    CONTENTS = Path('path/to/contents/')

    FOLDER_IN_CONTENTS = CONTENTS / 'some_folder'

    IMAGES = Path('path/to/images')

    FILE_IN_IMAGES = IMAGES / 'some_file'

有人告诉我,这不是枚举的好用法 Class,但我无法真正解释原因(也许是因为我从未见过这样的东西)。如果是这样,存储这些 file/folder 路径的最佳方式是什么?

好的做法是将路径存储在配置文件中。然后,当任何路径发生变化时,您不必更改任何代码,如果您打算共享您的项目,这很好。 YAML 通常用于该目的。

虽然您的解决方案本身没有任何问题。