所以我正在编写一个游戏,我需要一个可以存储大量变量的数据类型,范围从lists
、和. 我在使用或之间犹豫不决。tuples
strings
integers
dictionaries
namedtuples
GameData = namedtuple('GameData', ['Stats', 'Inventory', 'Name', 'Health'])
current_game = GameData((20,10,55,3), ['Sword', 'Apple', 'Potion'], 'Arthur', 100)
GameData = {'Stats': (20,10,55,3), 'Inventory': ['Sword', 'Apple', 'Potion'], 'Name': 'Arthur', 'Health': 100}
你看,这里最大的问题是所有这些值都可能改变,所以我需要一个可变数据类型,它不是namedtuple
. 查看文档,namedtuples
似乎有._replace()
,所以这是否使它可变?
我也喜欢namedtuples
有一种以格式__repr__
打印的方法。name=value
此外,为 中的每个值分配单独__doc__
字段的功能namedtuple
非常有用。有这个功能dictionaries
吗?