【问题标题】:Confused about key error in python script that actually works对实际有效的python脚本中的关键错误感到困惑
【发布时间】:2020-08-03 17:03:35
【问题描述】:

我有这个代码:

import requests
import json

url = "https://epistat.sciensano.be/Data/COVID19BE_CASES_MUNI_CUM.json"
r = requests.get(url)
cont = r.json()
for k in cont:
    value =  k.get('CASES') 
    if k ['TX_DESCR_NL'] == 'Wevelgem':
         print('Cases:'+ value)

输出:

Cases:227
Traceback (most recent call last):
  File "test.py", line 9, in <module>
    if k ['TX_DESCR_NL'] == 'Wevelgem':
KeyError: 'TX_DESCR_NL'

既然脚本有效,为什么我得到这个 KeyError?

【问题讨论】:

    标签: json python-3.7


    【解决方案1】:

    一个简单的 try/catch 条件显示列表中的 581 元素没有键 'TX_DESCR_NL'。

    您想先检查键是否存在以及它是否等于值。

    import requests
    import json
    
    url = "https://epistat.sciensano.be/Data/COVID19BE_CASES_MUNI_CUM.json"
    r = requests.get(url)
    cont = r.json()
    for k in cont:
        value =  k.get('CASES') 
        if 'TX_DESCR_NL' in k and k['TX_DESCR_NL'] == 'Wevelgem':
             print('Cases:'+ value)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      • 2015-01-06
      • 2014-11-28
      相关资源
      最近更新 更多