python库的嵌套字典与JSON文件

python库的嵌套字典与JSON文件,python,python-2.7,Python,Python 2.7,我有一个Excel工作簿,其中每个选项卡都有关于文件类型的信息。我希望我将要编写的python包能够访问这些信息。我正在讨论是否应该将每个选项卡硬编码为嵌套字典中的键/值,还是将每个选项卡都设置为JSON文件,然后库将读入。哪一种被认为是最佳实践?为什么 大约是20个文件和20个键。每个键将有大约40个键值对 词典示例: files = OrderedDict([ ('txt', {

我有一个Excel工作簿,其中每个选项卡都有关于文件类型的信息。我希望我将要编写的python包能够访问这些信息。我正在讨论是否应该将每个选项卡硬编码为嵌套字典中的键/值,还是将每个选项卡都设置为JSON文件,然后库将读入。哪一种被认为是最佳实践?为什么

大约是20个文件和20个键。每个键将有大约40个键值对

词典示例:

files = OrderedDict([
                    ('txt',
                        {
                            'default program': 'Notepad',
                            'Comes with Windows': True,
                           ...

                        }
                     ),
                      ('doc',
                        {
                            'default program': 'Word',
                            'Comes with Windows': True,
                           ...

                        }
                     )
                ])

就我个人而言,我会使用JSON,因为它和字典一样容易使用(在我看来),而且肯定比以字典的形式保存数据更标准。此外,如果您打算更新这些数据,那么JSON肯定是一个不错的选择


<>编辑:我也认为将大字典硬编码到代码中会有点麻烦。

你熟悉现有的Python包以与Excel一起工作吗?一些流行的是,它只是有人用Excel提供给我的硬编码信息。我希望它要么被硬编码到我的库中,要么在JSON文件中被破解。我不想坚持使用Excel。那么,我会让包始终以JSON格式读取,还是仅作为方法调用的一部分?例如,如果用户想知道.doc是否是标准的windows文件类型,我会在每次加载包时亲自加载JSON。只要把它存储在一个变量中,除非你认为它太大而不能保存在RAM中。如果您打算根本不更改数据,那么硬编码仍然是一种选择,正如我暗示的那样。