TypeError:尝试从字典访问值时,字符串索引必须是整数

2024-09-24 22:31:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一本这样的字典:

data = {
   "4.3.0 Test Plan":{
      "Engine":{
         "passed_count":0,
         "blocked_count":0,
         "untested_count":4088,
         "failed_count":0,
         "reviewed_count":0,
         "test_harness_issue_count":0,
         "bug_failure_count":0,
         "defect_list":[

         ]
      },
      "Management Web Console":{
         "passed_count":0,
         "blocked_count":0,
         "untested_count":12067,
         "failed_count":0,
         "reviewed_count":0,
         "test_harness_issue_count":0,
         "bug_failure_count":0,
         "defect_list":[

         ]
      }
   }
}

我试图通过以下操作访问这两个类别的untested_count值:

for value in data["4.3.0 Test Plan"]:
    print(value)
    print(value['untested_count'])

但是我在这一行收到这个错误TypeError: string indices must be integersprint(value['untested_count'])

在同一行上从python IDE Expected type 'Union[int, slice]', got 'str' instead接收这个错误

我不明白这是为什么,任何帮助和解释这个错误的例子将不胜感激

注意:print(value)在上面的for循环中工作并返回:

Engine
Management Web Console

预期结果:

Engine
4088
Management Web Console
12067

Tags: testwebdatavaluecount错误managementengine
1条回答
网友
1楼 · 发布于 2024-09-24 22:31:17

您正在迭代字典的keys,而可以使用items()同时迭代keysvalues

for key, value in data["4.3.0 Test Plan"].items():
   print(key)
   print(value['untested_count'])

输出:

Engine
4088
Management Web Console
12067

相关问题 更多 >