如何简化在Python中创建大型数据结构
我正在写一些代码,需要把一个复杂的数据结构传递给某个函数。
这个数据结构长这样:
{ 'animals': [ 'cows', 'moose', { 'properties': [ 9, 26 ] } ]
'fruits': {
'land': [ 'strawberries', 'other berries' ],
'space': [ 'apples', 'cherries' ]
}
}
我觉得这个结构看起来挺复杂的。你能想出一些方法来简化写这么大块数据结构的过程吗?
附注:这个结构是我自己编的,但我真实的数据结构和这个很相似。
2 个回答
2
1. 使用对象。你现在在用一些基本类型,比如字符串和字典,但对象更强大。
2. 使用函数参数。你可以把字典里的第一层键当作参数传给你的函数:
def yourfunction(animals, fruits) # do things with fruits and animals pass
5
其他编程语言通常会用对象或者结构体来解决这个问题,简单来说就是像下面这样:
class whatever:
animals = AnimalObject()
fruits = FruitObject()
class AnimalObject:
animals = ['cows','moose']
properties = [9,26]
class FruitObject:
land = ['strawberries', 'other berries']
space = ['apples', 'cherries']
当然,这种方法前提是你需要提前知道数据会是什么样子的。如果你不知道,那你只能选择使用映射或者列表了;-)