Python Tutorials
Python File Handling
Python Modules
JSON is a syntax for storing and exchanging data.
JSON is a text, written object of JavaScript.
Python has a built-in package called json
, which can be used to work with JSON data.
Import the json module:
import json
If you have a JSON series, you can analyze it using the json.loads()
method.
The result will be a Python dictionary.
Convert from JSON to Python:
import json
# some JSON:
x = '{ "name":"John", "age":30, "city":"New
York"}'
# parse x:
y = json.loads(x)
# the result is a
Python dictionary:
print(y["age"])
If you have Python objects, you can convert it to a JSON character unit using the json.dumps()
method.
Convert from Python to JSON:
import json
# a Python object (dict):
x = {
"name":
"John",
"age": 30,
"city": "New York"
}
#
convert into JSON:
y = json.dumps(x)
# the result is a JSON string:
print(y)
You can convert Python objects of the following types into JSON cables:
Convert Python objects into JSON strings, and print the values:
import json
print(json.dumps({"name": "John", "age": 30}))
print(json.dumps(["apple",
"bananas"]))
print(json.dumps(("apple", "bananas")))
print(json.dumps("hello"))
print(json.dumps(42))
print(json.dumps(31.76))
print(json.dumps(True))
print(json.dumps(False))
print(json.dumps(None))
When converting from Python to JSON, Python objects are converted to JSON (JavaScript) equivalent:
Python | JSON |
---|---|
dict | Object |
list | Array |
tuple | Array |
str | String |
int | Number |
float | Number |
True | true |
False | false |
None | null |
Convert a Python object containing all the legal data types:
import json
x = {
"name":
"John",
"age": 30,
"married": True,
"divorced": False,
"children": ("Ann","Billy"),
"pets":
None,
"cars": [
{"model": "BMW 230", "mpg":
27.5},
{"model": "Ford Edge", "mpg": 24.1}
]
}
print(json.dumps(x))
The example above prints a JSON alphabet unit, but it is not very easy to read, without backing up and breaking the line.
The json.dumps()
method has parameters to make it easier to read the result:
Use the indent
parameter to define the numbers of indents:
json.dumps(x, indent=4)
You can also define separators, the default value (",", ":"), which means to use comma and space to separate each item, and colon and space to separate keys in values.
Use the separators
parameter to change the default separator:
json.dumps(x, indent=4, separators=(". ", " = "))
The json.dumps()
method has key order components in the result:
Use the sort_keys
parameter to specify if the result should be sorted or not:
json.dumps(x, indent=4, sort_keys=True)