primary key
Read the section →A column that uniquely identifies each row.
Every defined term in this course, A–Z.
A path that starts from the top of the file system.
A class that lists methods its subclasses must provide.
A variable that builds up a result as a loop runs, like a running total.
A second name for the same object.
A defined way for one program to ask another for data or actions.
A secret string that proves your program is allowed to use an API.
A value you hand to a function when you call it.
Giving a name a value with =.
A named value attached to an object, reached with a dot.
A shortcut like total += 5 for total = total + 5.
The simple case where a recursive function stops calling itself.
A way of describing how running time grows as the input grows.
The indented lines that belong to an if, loop, or function.
True or False.
A spot where the debugger pauses your program.
The tool that actually turns a project into a wheel.
The simpler instructions Python turns your code into before running it.
Raw data: a sequence of numbers from 0 to 255.
A module written in C (or Rust, C++) that Python can import.
The pile of function calls that are in progress.
A bare name in a case pattern, which matches anything and stores it.
One letter, digit, symbol, or space in a piece of text.
A blueprint for making objects of a new kind.
A value stored on the class and shared by every instance.
A function that remembers variables from the place it was created.
The number Unicode gives each character.
A note in code that Python ignores.
A number with a real and an imaginary part, like 3+4j.
Building an object out of other objects it holds.
A one-line way to build a collection from a loop: [x*2 for x in xs].
An expression checked for true or false to decide what runs.
An if/else that produces a value: a if condition else b.
The method that sets up a new object when it's created.
Something used with with that sets up and always cleans up.
Automatically testing every change when it's pushed.
A function that can pause at an await and carry on later.
The standard Python interpreter, written in C.
A short pattern that picks out parts of a web page, like div.price.
A plain-text table with one row per line and commas between fields.
An organised store of data a program can search and update.
A class that writes its own init, repr and eq from a list of fields.
A tool that pauses a running program so you can inspect it.
Something written with @ above a function that wraps it in extra behaviour.
A copy of a container and everything inside it.
A value a parameter uses when the caller leaves it out.
Since 3.14, Python stores annotations without evaluating them until asked.
A package your project needs in order to work.
An object that controls what happens when an attribute is read or set.
A collection that looks values up by key.
A string at the top of a function that explains it.
A web page seen as a tree of elements.
Caring what an object can do, not what type it is.
Types belong to values, and a name can point at any type.
Keeping an object's inner details behind a clear set of methods.
The rule for turning text into bytes and back.
One URL of an API that does one job.
A fixed set of named choices, like Color.RED and Color.GREEN.
A named setting your operating system passes to programs.
A backslash code like \n that stands for a special character.
The scheduler that runs coroutines, switching between them while they wait.
An error that happens while a program runs.
An object that runs your functions on a pool of threads or processes.
A piece of code that produces a value.
A string starting with f that fills in values from {}.
A function treated as a value: stored, passed, returned.
Setup that pytest prepares for a test, such as a temporary folder.
A True/False variable that remembers whether something happened.
A number with a decimal point, stored approximately.
Division that rounds down to a whole number, written //.
A tool that rewrites code into one consistent layout.
The workspace Python makes for one function call, holding its local names.
A named, reusable piece of code you call to do a job.
A placeholder for a result that isn't ready yet.
The part of Python that cleans up objects nothing uses any more.
Something that produces values one at a time, only when asked.
A function with yield that produces values one at a time.
A type with a slot for another type, like list[str].
A lock that lets only one thread run Python code at a time in standard CPython.
A tool that records snapshots of your project's history.
Adding type hints a little at a time, where they help most.
An early check that handles a special case and gets out of the way.
A number Python computes from a value to find it fast in a set or dict.
Usable as a dictionary key or set member, because it never changes.
An extra named piece of information sent with a request or response.
A function that takes or returns another function.
The language web pages are written in.
The rules browsers and programs use to ask web servers for things.
An editor with running, debugging, and error-checking built in.
Safe to repeat: doing it twice has the same effect as doing it once.
Which object something is, as opposed to what it contains.
Unable to be changed once made.
A program that runs Python code, such as CPython or PyPy.
Making a module's code available in your file.
Spaces at the start of a line that show which block it belongs to.
A position number in a sequence, starting at 0.
A loop that never ends because its condition never becomes false.
Making a new class that starts with everything another class has.
An attack where input is treated as code, such as SQL.
One particular value of a type: 5 is an instance of int.
A value stored on one particular object.
A whole number.
A program that reads your code and carries it out.
Anything a for loop can go through one item at a time.
One trip through a loop's block.
An object that hands out items one at a time and remembers where it is.
The two-method agreement (iter and next) that for loops rely on.
A compiler that turns hot code into machine code while the program runs.
A text format for structured data made of objects, arrays, strings, and numbers.
The label you look a value up by in a dictionary.
A function that tells sorted or max what to compare.
An argument passed by name: f(x=3).
A tiny unnamed function written in one line.
Working something out only when it's actually needed.
A tool that flags likely bugs and style problems without running the code.
An ordered, changeable collection: [1, 2, 3].
A type that allows only certain exact values.
A tool that lets only one thread into a piece of code at a time.
A file recording the exact version of every installed package.
Recording what a program does, with levels like INFO and ERROR.
Code that repeats.
The name a for loop gives each item in turn.
A function that belongs to a value and is called with a dot.
The order Python searches classes when looking up a method.
A file of Python code you can import and use.
Garbled text from decoding bytes with the wrong encoding.
Able to be changed in place.
A loop inside another loop.
Python's value meaning 'nothing here'.
A document of runnable code cells mixed with text and results.
Any value Python works with: a number, a string, a list, a function.
A loop that runs one time too many or too few.
A value an operator works on, like 3 and 4 in 3 + 4.
A symbol such as + or == that combines values.
A library that lets you work with database rows as Python objects.
Replacing an inherited method with your own version.
A folder of modules imported together.
Getting a long list of results one page at a time.
A name in a function definition that receives an argument.
The address of a file or folder.
The standard module for working with file paths as objects.
Choosing code by the shape of a value with match and case.
Python's standard tool for installing packages.
A chain of steps where each one feeds the next.
Different kinds of objects answering the same method call in their own way.
An argument matched to a parameter by its position.
A check that runs automatically before git records a commit.
Which operator Python applies first.
A column that uniquely identifies each row.
A separately running program with its own memory.
A tool that measures where a program spends its time.
A set of instructions a computer can carry out.
A method you read like an attribute, without parentheses.
A type defined by the methods an object has, not by what it inherits.
Numbers that look random but come from a fixed recipe.
A function whose result depends only on its arguments and that changes nothing else.
The public website where Python packages are published.
The file that describes a Python project and its dependencies.
The most widely used Python testing tool.
A bug where the result depends on which thread happens to go first.
Signalling an error yourself.
A sequence of evenly spaced whole numbers, like range(5).
A string written r"..." where backslashes are kept as typed.
A function that calls itself on a smaller problem.
The link from a name (or a container) to an object.
How many references point at an object; at zero it is freed.
A pattern that describes text to search for.
A path that starts from the current folder.
The >>> prompt where Python runs each line as you type it.
How Python shows a value so you can tell exactly what it is, quotes and all.
A common style of web API built around resources and HTTP methods.
The value a function hands back.
A file where a website says which pages automated programs should leave alone.
Where in a program a name can be seen.
A .py file you run as a program.
A package's source code bundled for building elsewhere.
A password, key or token that must never be published.
A starting number that makes 'random' results repeatable.
The name a method uses for the object it was called on.
A version-number scheme MAJOR.MINOR.PATCH that signals what changed.
A special value that means 'stop', like an empty line.
The character that sits between pieces of text, like the comma in a,b,c.
Turning data into text or bytes so it can be saved or sent.
An unordered collection with no duplicates.
A new outer container holding the same inner objects.
Stopping as soon as the answer is known.
Anything a function does besides returning a value, like printing or changing a list.
A function's name and the parameters it takes.
A part of a sequence, written s[start:stop:step].
The text of a program as a person writes it.
A method with double underscores, like len, that Python calls for you.
The language for asking a database questions and changing its data.
A sort that keeps tied items in their original order.
The modules that come with every Python installation.
A complete instruction that does something.
Checking types by reading code, without running it.
The three-digit number a server sends back to say how a request went.
Text: a sequence of characters.
A word after a program's name that picks what it does, like git commit.
A piece of a longer string.
A 3.14 string starting with t that keeps its parts separate instead of joining them.
A coroutine the event loop is running alongside others.
A window where you type commands instead of clicking.
Writing a failing test first, then the code to pass it.
Code someone else wrote that you install separately.
One line of work inside a running program; several can run at once.
A limit on how long to wait before giving up.
A table you fill in by hand showing each variable after each step.
The report Python prints when an error stops a program.
A group of database changes that succeed or fail together.
Whether a value counts as true or false in a condition.
Code that runs something and catches the errors it might raise.
An ordered collection that can't change: (1, 2).
The kind of a value, such as int or str.
A short name for a long type, made with the type statement.
A tool that reads your code and its hints and reports type mistakes.
Making a value of one type from a value of another, like int("42").
A note in code saying what type a value should be, like x: int.
A description of a dict's exact keys and the type of each value.
The standard that gives every character a number.
A type that allows one of several types, like int | None.
Code that checks a small piece of your program does what it should.
Assigning several names at once from a sequence: a, b = pair.
A web address, like https://example.com/search?q=python.
The usual way of storing Unicode text as bytes.
A fast tool that manages Python versions, environments, and dependencies.
A name that refers to a value.
A private folder of installed packages for one project.
A library that turns incoming web requests into calls to your functions.
Extracting information from web pages with a program.
A ready-to-install package file ending in .whl.
Spaces, tabs, and line breaks.
The _ pattern that matches anything without storing it.
The folder a terminal or program is currently in.