0

我希望能够创建一个密钥列表,列表对(我认为这是描述我想要的解决方案的最准确方式......)

我有一个字典列表,并想为这些字典中的每一个添加一个元素,即字典列表(一口,我知道......)。

为此,我尝试将键、值对附加到列表中。当我这样做时,我得到一个语法错误,表面上是在 key:value 对中的冒号上触发的。

这是我的代码:

d_l[0]['abilities'] = list()
d_l[0]['abilities'].append(abilities_m_l[job_row]['Element Name']:list()) # ability: stats about ability

其中 d_l 是字典列表,“能力”是我正在创建的键。

这是我的错误(插入符号在冒号上(尽管过去它错误地标记了错误的位置))。

d_l[0]['abilities'].append(abilities_m_l[job_row]['Element Name']:list()) # ability: stats about ability
                                                                     ^
SyntaxError: invalid syntax
logout

如果有帮助,这是所需的整体结构:

{
    'job':'clerk', 'description': 'works in a bank', 'abilities': [
        'math': [
            'imp': {
                'Data Value': 4.5,
                'N' : 8,
                'S_E': 0.19                 
            },
            'level': {
                'Data Value': 4.75,
                'N': 8,
                'S_E': 0.25
            }
        ],
        'english': [
            'imp': {

            },
            'level': {

            }
        ],
        'dexterity': [
            'imp':{

            },
            'level': {

            }
        ]
    ]
},

非常感谢!如果您在上面的安排中看到明显的缺陷(也许我应该使用字典而不是列表来表示能力?)请告诉我。

4

1 回答 1

3

您想附加一个dict- 请注意{},例如:

.append( {abilities_m_l[job_row]['Element Name']:list()} )

[]对于空列表使用它更加 Pythonic 和高效......

于 2013-08-02T13:58:00.737 回答