Python在列表中定义列表

时间:2015-05-29 19:39:33

标签: python list tuples

我正在尝试定义一个表格颜色,其中包含各种其他包含表示颜色的元组的表。

title_label = [
text = (236, 218, 51),
background = (125, 142, 246)
],
start_button = [
text = (32, 40, 145),
background = (236, 235, 136),
pressed = (44, 51, 112)
],
quit_button = [
text = (166, 21, 13),
background = (48, 61, 188),
pressed = (31, 40, 129)
]

但是,这会产生无效的语法错误。那是为什么?

1 个答案:

答案 0 :(得分:8)

列表不接受名称 - 值对。你可能想在这里使用词典:

definitions = {
    'title_label': {
        'text': (236, 218, 51),
        'background': (125, 142, 246)
    },
    'start_button': {
        'text': (32, 40, 145),
        'background': (236, 235, 136),
        'pressed': (44, 51, 112)
    },
    'quit_button': {
        'text': (166, 21, 13),
        'background': (48, 61, 188),
        'pressed': (31, 40, 129)
    }
}

我不确定你在哪里找到你的语法,但它不是有效的Python。 Python列表使用[...]方括号,只能采用一系列单独的Python表达式:

some_list = ['one object', {'dictionary': 'value'}, ['another', 'list']]

请参阅Python教程的Data structures section