fork download
  1. import json
  2.  
  3. produtos = json.loads("""
  4. {
  5. "success": true,
  6. "data": {
  7. "produtos": {
  8. "energia": true,
  9. "boleto": false,
  10. "cp_refin": true,
  11. "consignado_privado": true,
  12. "cdc": true,
  13. "cp_cheque": true,
  14. "cdc_energia": true,
  15. "debito_em_conta": true
  16. }
  17. },
  18. "errors": null
  19. }
  20. """)
  21.  
  22. success = bool(produtos.get("success"))
  23. data = produtos.get("data") or {}
  24. produtos_lista = data.get("produtos") or []
  25. for k, raw_item in produtos_lista.items():
  26. if isinstance(raw_item, str):
  27. raw_item = raw_item.strip()
  28. if not raw_item:
  29. continue
  30. if raw_item[0] in "{[":
  31. item = json.loads(raw_item)
  32. else:
  33. item = {}
  34. else:
  35. item = raw_item or {}
  36. produtos_lista[k] = item
  37. item = produtos_lista
  38. def _to_bool(valor):
  39. if isinstance(valor, bool):
  40. return valor
  41. if isinstance(valor, (int, float)):
  42. return valor != 0
  43. if isinstance(valor, str):
  44. return valor.strip().lower() in {"1", "true", "t", "yes", "sim", "s"}
  45. return False
  46.  
  47. energia = _to_bool(item.get("energia"))
  48. boleto = bool(item.get("boleto"))
  49. cp_refin = bool(item.get("cp_refin"))
  50. consignado = bool(item.get("consignado_privado"))
  51. cdc = bool(item.get("cdc"))
  52. cp_cheque = bool(item.get("cp_cheque"))
  53. cdc_energia = bool(item.get("cdc_energia"))
  54. debito_conta = bool(item.get("debito_em_conta"))
Success #stdin #stdout 0.13s 15520KB
stdin
Standard input is empty
stdout
Standard output is empty