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

如何用for循环初始化包含W1到W100空列表的Python字典

问题解决方法

你出现的错误核心有两点:一是动态拼接字符串生成键名的语法不符合Python规范,二是range范围设置错误,会缺失W100这个键。

字典初始化修正

正确写法如下,使用f-string实现键名的动态生成,同时调整range范围覆盖1到100:

res = {'lambda' : []}
# range(1, 101)会生成1~100的整数,刚好对应W1到W100的编号
for i in range(1, 101):
    res.update({f'W{i}': []})

如果想要更简洁的写法,Python 3.9及以上版本可以用字典推导式+字典合并运算符一步完成初始化:

res = {'lambda': []} | {f'W{i}': [] for i in range(1, 101)}

如果使用Python 3.6以下不支持f-string的版本,可以把f'W{i}'替换为'W{}'.format(i)或者'W' + str(i),效果完全一致。

列表追加值修正

同样使用f-string生成键名即可,注意如果你的W列表下标从0开始对应W1的取值,要对应下标偏移:

for i in range(1, 101):
    res[f'W{i}'].append(W[i-1])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 05:39:04