问题分析:

        我在 A.py 中引用了在 B.py 中定义的列表(该列表名为companyPeople),也导入了B.py文件,通过 json.loads() 解析包含 companyPeople 列表的JSON 字符串,显示 raise JSONDecodeError 的同时,也显示 companyPeople 不存在


解决步骤:

  • 在解析 companyPeople 时添加了 try-except 块来捕获 json.JSONDecodeError 异常,以防止非JSON格式字符串导致的错误。
  • 在列表推导式中添加了空值检查,确保 companyPeople 不为空,避免调用空值

修改前:

for i in jobs:
        peoples.append(json.loads(i.companyPeople)[1])
    peopleColumn = [0 for i in range(len(companyPeople))]

修改后:

 for i in jobs:
     if i.companyPeople:  # 检查 companyPeople 是否存在
          try:
             data = json.loads(i.companyPeople)
              if len(data) > 1:  # 确保 JSON 数据中有足够的元素,避免调用空值
                 peoples.append(data[1])
          except json.JSONDecodeError as e:
              print(f"Error decoding JSON for job {i.id}: {e}")
 peopleColumn = [0] * len(companyPeople)

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐