Python Data Processing and Encoding

Data can be presented in different kinds of encoding such as CSV, XML, and JSON, etc. For each case the processing format is different. Python can handle various encoding processes, and different types of modules need to be imported to make these encoding techniques work.

Defining CSV Files

CSV (Common Separated Data) files to store data that are in tabular format into plain text & each line is treated as a data record in the file. Each record holds one or more fields separated by commas. Here's a typical format of tabular data along with its CSV data - record.

Figure - Separated Sample

spreadsheet sample

And now let's see how it looks when a tabular form of data gets converted to Common Separated CSV file format:

Emily Whittaker,2017,McCarren House,444
Belinda Jameson,2018,Cushing House,201
Jeff Smith,2019,Oliver House,11-A
Kate Hudson,2018,Prescott House,205

CSV File Represented in Tuple

import csv
with open('school.csv') as g:
    g_csv = csv.reader(g)
headers = next(g_csv)
for row in g:
    # All the rows get rocessed
    # . . . . . . . .

This a typical example of a CSV file handled by Python.

Another alternative to read and put data in a sequence of dictionaries, the code will be:

import csv
with open('school.csv') as g:
    g_csv = csv.DictReader(g)
for row in g_csv:
    # process the data of the rows
    # . . . . . . .

Other modules can be used to deal with CSV files. Some of them are:

  • writerow(headers)
  • reader(args)
  • split('.')

Defining JSON

It is a structure for passing around objects that contain value-pairs/names, arrays, and other objects. It is abbreviated as JavaScript Object Notation. It is an open standard format that uses human-readable text to pass on data-objects that consist of attributes/value - pairs.

Dealing with JSON Data

The JSON module of Python provides an easy way to encode and decode data in JSON. It has two major functions. These are:

  • dumps()
  • loads()

Let's have a look at the Python data-structure into JSON:

import json
info = {
'name' : 'mango',
'number' : 10,
'price' : 500
json_sr = json.dumps(info)

This is how JSON encoded strings changed to Python data-structure:

info = json.loads(json_sr)

If the programmers are working with files instead of strings, they can use json.load() and json.dump().

JSON encoding sustains basic types of 'None', 'bool', 'int', 'float' and 'str' and also tuples, lists, and dictionaries containing those types. In case of dictionaries, keys are assumed to be strings. For yielding the JSON specification, programmers should encode Python lists and dictionaries.

The format of JSON encoding is almost similar to that of Python syntax, except for a few minor changes. For example, True is mapped to 'true' and False is mapped to 'false'. Similarly, None is mapped to 'null.

Subscribe Updates via Email

Join 49,000+ W3schools lovers and get all the latest tutorials, programs, algorithms in your inbox.