"Persistence is the key to the adventure we call life."
– Torsten Alexander Lange
In the previous chapters, we have explored several different aspects of Python. As the examples have a didactic purpose, we've run them in a simple Python shell, or in the form of a Python module. They ran, maybe printed something on the console, and then they terminated, leaving no trace of their brief existence.
Real-world applications though are generally much different. Naturally, they still run in memory, but they interact with networks, disks, and databases. They also exchange information with other applications and devices, using formats that are suitable for the situation.
In this chapter, we are going to start closing in to the real world by exploring the following:
- Files and directories
- Compression
- Networks and streams
- The JSON data-interchange...