如何定义命名元组常量列表?我希望在模块中定义类似的东西,并在我的代码中使用它。例如,当我只对成人感兴趣时,我会对其使用过滤器。
但是,我不希望其他编码人员能够破坏这些数据,如果我使用列表,他们就可以这样做。我意识到我可以使用元组,但我的理解是,有一个事实上的标准,即元组用于异构数据,而我实际上拥有同质数据:
http://jtauber.com/blog/2006/04/15/python_tuples_are_not_just_constant_lists/
如果我正确理解了这篇文章。
human_map = [
Activity(ADULT, EATING, OFTEN, 5),
Activity(ADULT, SLEEPING, PERIODIC, 24),
Activity(BABY, CRYING, OFTEN, 1)]
最佳答案
列表和元组可以用于异构数据,但在Python中将它们用于同质数据没有任何问题。
其他语言提供的基本集合(例如 C/C++ 中的数组)只能保存同类数据;更复杂的集合必须用于异构数据,在这些语言中,最佳实践是使用更有效的数组来处理同质数据,而不是产生更奇特的集合类型的开销。但这种逻辑不适适用于 Python。
关于python - 同质数据常量列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25885504/