代码之家  ›  专栏  ›  技术社区  ›  Chaban33

尝试分配布尔值时选中

  •  0
  • Chaban33  · 技术社区  · 6 年前
    ctx['location_ids'] = vals['location_ids'] 
    

    我有一个大的功能,所以我不会张贴在这里,但问题是什么时候 vals['location_ids'] 将值设为整数所有操作都是平滑的,但有时中没有值 的确如此 False 我犯了个错误。

    ctx['location_ids'] = vals['location_ids']
    TypeError: 'bool' object has no attribute '__getitem__'
    

    我怎样才能避免它,也许加上hasattr?

    1 回复  |  直到 6 年前
        1
  •  1
  •   Nordle    6 年前

    你应该先查一下字典

    if isinstance(vals, dict):
       ctx['location_ids'] = vals.get('location_ids', None)