0

我有一个从 monday.com 网站获得的查询。我正在尝试获取受人尊敬的董事会的列值,并尝试将这些值放入 python 字典中,以便稍后我可以使用某些条件进行迭代并将值更新回网站。根据 API(Monday.com 和 GraphQL)给出的说明,我运行了这个查询来获取板的列值,但我未能将其转换为 python 字典。请帮忙!这是我在 Graph QL API playground 上写的查询代码:

  boards(ids: 1348913462) {
    items(limit: 50) {
      id
      column_values(ids: "pratica_cliente") {
        value
      }
    }
  }}

现在为了将其转换为字典,我运行了以下代码:

contents=[]
try:
    with open("./r.json", 'r') as f:
        contents =json.load(r)
except Exception as e:
    print(e)

print(contents[:]["value"])

li = [item.get('column_values') for item in contents]
print(li)

我得到的错误是:

[Errno 2] 没有这样的文件或目录:'./r.json' Traceback(最近一次调用最后一次):第 31 行,在 print(contents[:]["value"]) 类型错误:列表索引必须是整数或切片,而不是字符串

它将整个 JSON 文件作为输出返回给我,但我打算让它成为一个 python 字典,如:

dict = {id:value,
        id2:value2....and so on}

是的,我在堆栈、谷歌和其他地方搜索了很多,所以一些代码也来自几个地方。

4

1 回答 1

0

这行不通,因为您没有变量 "r" to json.load

    with open("./r.json", 'r') as f:
        contents =json.load(r)

显然“./r.json”不是文件。所以contents永远都是[]

然后您尝试使用字符串访问作为列表的内容。

这就是您看到这些错误的原因。很不言自明。

于 2021-11-20T01:57:05.103 回答