JSON



Python - JSON


JSON is a syntax for storing and exchanging data.

JSON is text, written with JavaScript object notation.


JSON in Python :


Python has a built-in package called json, which can be used to work with JSON data.


Import the json module:

import json

Parse JSON - Convert from JSON to Python :


If you have a JSON string, you can parse it by using the json.loads() method.


The result will be a "Python dictionary".

Convert from JSON to Python:

import json
# some JSON:
x='{"name": "freedom","age": 2,"year": 2018}'
# parse x:
y=json.loads(x)

# the result is a Python dictionary:
print(y)
    
=======o/p========

{'name': 'freedom', 'age': 2, 'year': 2018}


Convert from Python to JSON :

If you have a Python object, you can convert it into a JSON string by using the json.dumps() method.


Convert from Python to JSON :

import json
# some python:
x={
    "name":"freedom",
    "age":2,
    "year":2018
    }

# parse x:
y=json.dumps(x)

# the result is a Python dictionary:
print(y)
    
=======o/p=======

{'name': 'freedom', 'age': 2, 'year': 2018}



You can convert Python objects of the following types, into JSON strings:

  • dict
  • list
  • tuple
  • string
  • int
  • float
  • True
  • False
  • None


Convert Python objects into JSON strings, and print the values:

import json

print(json.dumps({"name": "johanes", "age": 25}))
print(json.dumps(["samsung", "oppo"]))
print(json.dumps(("strawberry", "raspberry")))
print(json.dumps("Hey welcome!"))
print(json.dumps(58))
print(json.dumps(101.760))
print(json.dumps(True))
print(json.dumps(False))
print(json.dumps(None))


==========O/P===========

{"name": "johanes", "age": 25}
["samsung", "oppo"]
["strawberry", "raspberry"]
"Hey welcome!"
58
101.76
true
false
null

When you convert from Python to JSON, Python objects are converted into the JSON (JavaScript) equivalent:

PythonJSON
dictObject
listArray
tupleArray
strString
intNumber
floatNumber
Truetrue
Falsefalse
Nonenull

Example
Convert a Python object containing all the legal data types:

import json
x={
  "name": "sweejya",
  "surname": "abcd",
  "standard": 4,
  "address": "laxminagar",
  "marital status": "no",
  "school": "a to z school",
  "cars":[
    {"model":"swift","mpg":27.5}
    ]
  }
print(json.dumps(x))

=========o/p===========

{"name": "sweejya", "surname": "abcd", "standard": 4, "address": "laxminagar", "marital status": "no", "school": "a to z school", "cars": [{"model": "swift", "mpg": 27.5}]}

Format the Result :


The example above prints a JSON string, but it is not very easy to read, with no indentations and line breaks.

The json.dumps() method has parameters to make it easier to read the result:


Example
Use the indent parameter to define the numbers of indents:

import json
x={
  "name": "sweejya",
  "surname": "abcd",
  "standard": 4,
  "address": "laxminagar",
  "marital status": "no",
  "school": "a to z school",
  "cars":[
    {"model":"swift","mpg":27.5}
    ]
  }
print(json.dumps(x,indent=4))

==========o/p===========

{
    "name": "sweejya",
    "surname": "abcd",
    "standard": 4,
    "address": "laxminagar",
    "marital status": "no",
    "school": "a to z school",
    "cars": [
        {
            "model": "swift",
            "mpg": 27.5
        }
    ]
}

You can also define the separators, default value is (", ", ": "), which means using a comma and a space to separate each object, and a colon and a space to separate keys from values:

Example
Use the separators parameter to change the default separator:

import json
x={
  "name": "sweejya",
  "surname": "abcd",
  "standard": 4,
  "address": "laxminagar",
  "marital status": "no",
  "school": "a to z school",
  "cars":[
    {"model":"swift","mpg":27.5}
    ]
  }
# use . and a space to separate objects, and a space, a = and a space to separate keys from their values:
print(json.dumps(x,indent=4,separators=(". ", "= ")))

============o/p=============

{
    "name"= "sweejya". 
    "surname"= "abcd". 
    "standard"= 4. 
    "address"= "laxminagar". 
    "marital status"= "no". 
    "school"= "a to z school". 
    "cars"= [
        {
            "model"= "swift". 
            "mpg"= 27.5
        }
    ]
}

Order the Result :


The json.dumps() method has parameters to order the keys in the result :


Example
Use the sort_keys parameter to specify if the result should be sorted or not:

import json
x={
  "name": "sweejya",
  "surname": "abcd",
  "standard": 4,
  "address": "laxminagar",
  "marital status": "no",
  "school": "a to z school",
  "cars":[
    {"model":"swift","mpg":27.5}
    ]
  }
# sort the result alphabetically by keys:
print(json.dumps(x,indent=4,sort_keys=True))


===========o/p===========

{
    "address": "laxminagar",
    "cars": [
        {
            "model": "swift",
            "mpg": 27.5
        }
    ],
    "marital status": "no",
    "name": "sweejya",
    "school": "a to z school",
    "standard": 4,
    "surname": "abcd"
}


RegEx SETS

Python - RegEx SETS

posted on 2019-11-12 23:06:24 - Python Tutorials


RegEx_Functions

Python - RegEx_Functions

posted on 2019-11-09 06:07:29 - Python Tutorials


RegEx_Sets

Python - RegEx_Sets

posted on 2019-11-09 05:30:54 - Python Tutorials


Prompt Examples

ChatGPT Prompt Examples

posted on 2023-06-21 22:37:19 - ChatGPT Tutorials


Use Cases

Chat GPT Key Use Cases

posted on 2023-06-21 21:03:17 - ChatGPT Tutorials


Prompt Frameworks

Prompt Frameworks

posted on 2023-06-21 19:33:06 - ChatGPT Tutorials