如何处理django的分组选择?

7eumitmz  于 2023-01-06  发布在  Go
关注(0)|答案(1)|浏览(127)

有这样的django选择:

MEDIA_CHOICES = (
    ('Audio', (
        ('vinyl', 'Vinyl'),
        ('cd', 'CD'),
    )
    ),
    ('Video', (
        ('vhs', 'VHS Tape'),
        ('dvd', 'DVD'),
    )
    ),
    ('unknown', 'Unknown'),
)

我如何访问一个类别的子组(例如,获得音频选项)?我如何迭代集合?,以及我如何直接获得一个叶节点,如乙烯基?

6tqwzwtp

6tqwzwtp1#

内置类型dict可以从元组列表构造。

>>> MEDIA_CHOICES_D = dict(MEDIA_CHOICES)
>>> MEDIA_CHOICES_D.keys()
['unknown', 'Audio', 'Video']
>>> audio = MEDIA_CHOICES_D['Audio']
>>> audio
(('vinyl', 'Vinyl'), ('cd', 'CD'))
>>> audio_d = dict(audio)
>>> audio_d['vinyl']
'Vinyl'
>>> for k, v in audio_d.iteritems(): print '%s -> %s' % (k, v)
... 
vinyl -> Vinyl
cd -> CD
>>>

相关问题