Chapter 2. Data: Types, Values, Variables, and Names

A good name is rather to be chosen than great riches.

Proverbs 22:1

Under the hood, everything in your computer is just a sequence of bits (see Appendix A). One of the insights of computing is that we can interpret those bits any way we want—as data of various sizes and types (numbers, text characters) or even as computer code itself. We use Python to define chunks of these bits for different purposes, and to get them to and from the CPU.

We begin with Python’s data types and the values that they can contain. Then we see how to represent data as literal values and variables.

Python Data Are Objects

You can visualize your computer’s memory as a long series of shelves. Each slot on one of those memory shelves is one byte wide (eight bits), and slots are numbered from 0 (the first) to the end. Modern computers have billions of bytes of memory (gigabytes), so the shelves would fill a huge imaginary warehouse.

A Python program is given access to some of your computer’s memory by your operating system. That memory is used for the code of the program itself, and the data that it uses. The operating system ensures that the program cannot read or write other memory locations without somehow getting permission.

Programs keep track of where (memory location) their bits are, and what (data type) they are. To your computer, it’s all just bits. The same bits mean different things, depending on what type we say they are. The same bit pattern ...

Get Introducing Python, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.