Short, plain definitions of the technical words in this book. The chapter in brackets is where the idea is explained properly.
absolute path: The full address of a file, starting from the top of the computer’s filing system, such as C:\Users\Sara\notes.txt. (Ch. 9)
algorithm: A step-by-step method for solving a problem. A recipe is an algorithm for a cake. (Ch. 26)
API: Short for application programming interface. A way for one program to ask another for data or services, often over the internet. (Ch. 19)
argument: A value you pass to a function when you call it. In round(3.7), 3.7 is the argument. (Ch. 7)
attribute: A piece of data that belongs to an object, such as bedroom.volume. (Ch. 11)
automation: Getting the computer to do a repetitive job for you, such as renaming files or sending a weekly report. (Ch. 14)
backup: A copy of files kept somewhere safe in case the originals are lost or damaged. (Ch. 13, 29)
boolean: A value that is either True or False. Named after the mathematician George Boole. (Ch. 3)
bug: A mistake in a program that makes it behave wrongly. (Ch. 21)
bytecode: The simpler instructions Python translates your code into before running it. You never need to read it. (Ch. 1)
call: To run a function or method, by writing its name followed by brackets, as in print(). (Ch. 7)
class: The design for a kind of object. It says what every object of that kind knows (attributes) and does (methods). (Ch. 11)
class variable: A variable that belongs to the class itself, shared by every object made from it. (Ch. 11)
command line: See terminal.
comment: A note in your code, starting with #, that Python ignores. It’s for people. (Ch. 2)
composition: Building an object out of other objects, rather than inheriting from a parent class. (Ch. 12)
condition: An expression that’s either true or false, used to decide what a program does next. (Ch. 4)
configuration: Settings kept outside the code, often in a file, so you can change what a program does without editing it. (Ch. 13)
CSV: Comma-separated values. A plain-text file of rows and columns that any spreadsheet can open. (Ch. 15)
data type: The kind of value something is, such as a number, text, or a list. (Ch. 3)
debugger: A tool that pauses your program so you can look at its variables, one line at a time. (Ch. 21)
debugging: Finding and fixing bugs. (Ch. 21)
decorator: A line starting with @, placed above a function, that adds behaviour to it. Flask uses @app.route. (Ch. 25)
dictionary: A collection that stores values under keys, so you can look them up by name. Written with curly braces. (Ch. 6)
dry run: Running an automation in a “show me what you’d do” mode, without actually changing anything. (Ch. 14)
editor: A program for writing code. This book uses VS Code. (Ch. 2)
environment variable: A named setting kept by your operating system or terminal, often used for passwords so they stay out of your code. (Ch. 19, 27)
exception: Python’s signal that something went wrong while a program was running. If nothing catches it, the program stops. (Ch. 8)
expression: Any piece of code that produces a value, such as 2 + 3 or name.upper(). (Ch. 3)
extension (VS Code): An add-on that teaches VS Code a new skill, such as running Python. (Ch. 2)
f-string: A string with an f in front, in which values in curly braces are filled in, as in f"Hi {name}". (Ch. 3)
feature (machine learning): One of the measurements a model learns from, such as the size of a house. (Ch. 26)
file extension: The ending of a file name, such as .py or .csv, which says what kind of file it is. (Ch. 2)
float: A number with a decimal point, such as 3.5. (Ch. 3)
flowchart: A diagram of the steps a program takes, using ovals, boxes, diamonds and arrows. (Ch. 3)
folder (directory): A container for files on your computer. (Ch. 9)
function: A named, reusable block of code that does one job. You define it with def. (Ch. 7)
GET and POST: The two most common kinds of web request. GET asks for a page; POST sends data, such as a form. (Ch. 25)
Git and GitHub: Git keeps a history of changes to your code. GitHub is a website where you store and share that history. (Ch. 30)
HTML: The language web pages are written in. (Ch. 25, 29)
IDE: Integrated development environment. An editor with extra tools, such as a debugger, built in. (Ch. 2)
immutable: Can’t be changed after it’s created. Strings and tuples are immutable. (Ch. 6)
import: Bringing code from a module into your program so you can use it. (Ch. 10)
indentation: The spaces at the start of a line. Python uses them to decide which lines belong together. (Ch. 4)
index (position): The position of an item in a list or string, counting from 0. (Ch. 6)
infinite loop: A loop that never stops, usually because its condition never becomes false. Press Ctrl+C to escape. (Ch. 5)
inheritance: Making a new class based on an existing one, so it gets the parent’s attributes and methods. (Ch. 12)
__init__: The special method that runs automatically when a new object is made. It sets the object’s starting values. (Ch. 11)
input: Data that comes into a program, from the keyboard, a file or the internet. (Ch. 3)
instance: Another word for an object made from a class. (Ch. 11)
instance variable: A variable that belongs to one object, created with self. inside a method. (Ch. 11)
integer: A whole number, such as 42 or -7. (Ch. 3)
interactive shell (REPL): The >>> prompt, where Python runs each line as soon as you type it. (Ch. 2)
interpreter: The program that reads your Python code and runs it. (Ch. 1)
JSON: A text format for structured data, used by most web APIs. It looks a lot like Python dictionaries and lists. (Ch. 20)
keyword argument: An argument passed by name, as in round(3.14159, ndigits=2). (Ch. 7)
library: A collection of modules you can use in your programs. Python comes with a large standard library. (Ch. 10)
list: An ordered collection of items that can change, written with square brackets. (Ch. 6)
list comprehension: A short way to build a list from a loop in one line, such as [n * 2 for n in numbers]. (Ch. 6)
logging: Keeping a record of what a program did and what went wrong, usually in a file. (Ch. 13)
loop: Code that repeats. Python has for loops and while loops. (Ch. 5)
machine learning: Getting a program to learn a pattern from examples instead of being given the rules. (Ch. 26)
method: A function that belongs to an object, called with a dot, as in name.upper(). (Ch. 11)
model (machine learning): What a learning algorithm produces after it has studied the examples. It’s used to make predictions. (Ch. 26)
module: A file of Python code that other code can import. (Ch. 10)
mutable: Can be changed after it’s created. Lists and dictionaries are mutable. (Ch. 6)
None: Python’s value for “nothing here.” A function with no return gives back None. (Ch. 7)
object: A bundle of data (attributes) and actions (methods). Everything in Python is an object. (Ch. 11)
operator: A symbol that does something with values, such as +, == or and. (Ch. 3)
output: What a program produces: text on the screen, a file, an email. (Ch. 2)
package: A module, or a group of modules, that you install with pip. (Ch. 23)
parameter: A name in a function’s definition that receives an argument when the function is called. (Ch. 7)
PATH: The list of folders your computer searches when you type a command such as python. (Ch. 2)
path: The address of a file or folder. (Ch. 9)
pip: The tool that installs Python packages, as in python -m pip install requests. (Ch. 15, 23)
pipeline: A program that takes data through stages, usually extract, transform and load. (Ch. 20)
portfolio: A collection of your finished projects that you can show employers, often on GitHub. (Ch. 0)
prompt: The text a terminal or the shell shows when it’s waiting for you to type, such as >>>. (Ch. 2)
regular expression (regex): A small language for describing patterns in text, such as “INV, a dash, then digits.” (Ch. 16)
relative path: A file’s address starting from the current folder, such as data/notes.txt. (Ch. 9)
return value: The value a function hands back with return. (Ch. 7)
route: In a web app, the link between a web address and the function that answers it. (Ch. 25)
scraping: Pulling information out of web pages with a program. (Ch. 29)
script: A Python program saved in a .py file. (Ch. 2)
self: Inside a class, the particular object a method is working on. Read it as “my.” (Ch. 11)
set: A collection with no duplicates and no order, written with curly braces. (Ch. 6)
slicing: Taking part of a list or string, as in name[0:3]. (Ch. 6)
SMTP: The system used to send email. (Ch. 27)
standard library: The modules that come with Python, such as pathlib, csv and random. (Ch. 10)
string: Text, written inside quotes. (Ch. 3)
syntax: The grammar rules of a programming language. (Ch. 1)
template: A file with gaps that a program fills in, such as a web page or a Word document. (Ch. 17, 25)
terminal: A window where you type commands to your computer. Called Command Prompt or PowerShell on Windows and Terminal on a Mac. (Ch. 2)
test: Code that checks other code gives the right answers. (Ch. 22)
traceback: The report Python prints when an error stops a program. Read it from the bottom up. (Ch. 8)
tuple: An ordered collection that can’t be changed, written with round brackets. (Ch. 6)
variable: A name that refers to a value, such as age = 29. (Ch. 3)
virtual environment: A private set of installed packages for one project, usually in a folder called .venv. (Ch. 23)
VS Code: Visual Studio Code, the free code editor this book uses. (Ch. 2)
working directory: The folder a program or terminal is “standing in.” Relative paths start from here. (Ch. 9)