我一直收到keyerror,但我已经在外面测试过了,它奏效了

问题描述

我想创建一个使用其他字典中的值的字典,并且这些值是列表。

    demand={demandpoint[i]:coorD[i] for i in range(50)}
    Launchstation={Launchstationpoint[i]:coorL[i] for i in range(50)}
    Rechargestation={Rechargestationpoint[i]:coorR[i] for i in range(50)}

这些键和值如下所示:

    {1: [67,3],2: [27,49],.....

现在我想使用这些值来计算,并创建一个新字典(下面段落的最后一行实际上与 (s1=math....) 行平行)

demandpoint[]&Launchstationpoint[] 是我之前设置的两个列表

    dicttt={}
    for i in range(50):
        for j in range(50):
            s1=math.sqrt((((demand[i])[0])-((Launchstation[j])[0]))**2+(((demand[i])[1])-((Launchstation[j])[1])**2))
    dicttt.setdefault((demandpoint[i],Launchstationpoint[j]),s1)        

但它一直告诉我

    keyerror:0

我已经测试过

    print(demand[1])
    print((demand[1])[0])

结果是:

    [28,14]
    28

但我想我不能在这里那样做? 我该怎么做?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)