80_json.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. a = {
  2. 'a': 1,
  3. 'b': 2,
  4. 'c': None,
  5. 'd': [1, 2, 3],
  6. 'e': {
  7. 'a': 100,
  8. 'b': 2.5,
  9. 'c': None,
  10. 'd': [1425245, 278587578142, 397675452452452],
  11. },
  12. "f": 'This is a string',
  13. 'g': [True, False, None],
  14. 'h': False
  15. }
  16. try:
  17. import cjson as json
  18. print('[INFO] cjson is used')
  19. except ImportError:
  20. import json
  21. assert json.loads("1") == 1
  22. assert json.loads('"1"') == "1"
  23. assert json.loads("0.0") == 0.0
  24. assert json.loads("[1, 2]") == [1, 2]
  25. assert json.loads("null") == None
  26. assert json.loads("true") == True
  27. assert json.loads("false") == False
  28. assert json.loads("{}") == {}
  29. _j = json.dumps(a)
  30. _a = json.loads(_j)
  31. for k, v in a.items():
  32. assert (a[k] == _a[k]), f'{a[k]} != {_a[k]}'
  33. for k, v in _a.items():
  34. assert (a[k] == _a[k]), f'{a[k]} != {_a[k]}'
  35. b = [1, 2, True, None, False]
  36. _j = json.dumps(b)
  37. _b = json.loads(_j)
  38. assert b == _b
  39. c = 1.0
  40. _j = json.dumps(c)
  41. _c = json.loads(_j)
  42. assert c == _c
  43. d = True
  44. _j = json.dumps(d)
  45. _d = json.loads(_j)
  46. assert d == _d
  47. assert repr((1,)) == '(1,)'
  48. assert repr((1, 2, 3)) == '(1, 2, 3)'
  49. assert repr(tuple()) == '()'
  50. assert json.dumps((1,)) == '[1]'
  51. assert json.dumps((1, 2, 3)) == '[1, 2, 3]'
  52. assert json.dumps(tuple()) == '[]'
  53. assert repr([]) == '[]'
  54. assert repr([1, 2, 3]) == '[1, 2, 3]'
  55. assert repr([1]) == '[1]'
  56. assert json.dumps([]) == '[]'
  57. assert json.dumps([1, 2, 3]) == '[1, 2, 3]'
  58. assert json.dumps([1]) == '[1]'