首页 > 解决方案 > 如何存储嵌套循环数据

问题描述

我想存储像 df[month,pr] 这样的数据。怎么做?我所做的是在下面。我要做

month=[j,f,m]
pr=[32,50,75,110,150,210,260]
df = dict()
for k in month:
 for i in pr:
  df[k,i] = expence.loc[expence['price']==i]

如果我只使用下面的 i 或 j ,那么它会成功执行

pr=[32,50,75,110,150,210,260]
df = dict()
for i in pr:
 df[i] = expence.loc[expence['price']==i]

寻找建议。

标签: pythondictionary

解决方案


这里的问题是,当您编写 df[j,i] 时,您的程序所理解的是您提供 j 作为键而 i 作为其值,这就是它给出错误的原因。您可以通过使其成为嵌套字典来解决问题。也许代码中的微小变化可能会解决您的问题。

month=[j,f,m]
pr=[32,50,75,110,150,210,260]
for j in month:
    df[j] = dict()
    for i in pr:
        df[j][i] = expence.loc[expence['price']==i]

推荐阅读