You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

循环创建字典并以循环变量命名键时遇语法错误,求修正

修正后的代码实现

你原代码的核心错误在于最后一行的赋值逻辑:错误使用了列表语法且重新覆盖了字典变量table,正确做法是给字典添加键值对。以下是修正后的完整代码:

import numpy as np

table = {}

elasticity = np.array([[1,2],[3,4]])
genders = ['female', 'male']
income = ['i0','i1']

for i in range(len(genders)):
    for j in range(len(income)):
        key = f"{genders[i]}_{income[j]}"  # 用f-string更简洁地拼接键名
        table[key] = elasticity[i, j]  # 给字典添加键值对

关键修正点说明

  • 用table[key] = 值的标准语法给字典添加元素,而非错误的列表赋值写法。
  • 替换字符串拼接方式为f-string,代码更简洁易读。
  • 移除了无实际作用的elasticity.shape语句,若需查看数组形状可保留但无需单独成行。

最终字典结构

运行代码后,table字典的结构如下:

{
    'female_i0': 1,
    'female_i1': 2,
    'male_i0': 3,
    'male_i1': 4
}

完全匹配你预期的键值对应关系。

内容的提问来源于stack exchange,提问作者Stata_user

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 17:40:00