この答えを引用する:
タプルが不変であることに加えて、それらの使用法をガイドする必要があるセマンティックの区別もあります。タプルは異種のデータ構造です(つまり、それらのエントリは異なる意味を持ちます)が、リストは同種のシーケンスです。タプルには構造があり、リストには順序があります。
これは私には理にかなっています。しかし、なぜDjangoは設定にリストではなくタプルを使用するのですか?例:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
)
これ(および他のすべての設定)は、意味的にリストの完璧なケースではありませんか?