> For the complete documentation index, see [llms.txt](https://drlilianblot.gitbook.io/introduction-to-programming-with-python/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://drlilianblot.gitbook.io/introduction-to-programming-with-python/variables-expressions-and-statements/glossary.md).

# Glossary

**Value:** One of the basic units of data, like a number or string, that a program manipulates.

**Type:** A category of values. The types we have seen so far are integers (type `int`), floating-point numbers (type `float`), and strings (type `str`).

**Integer:** A type that represents whole numbers.

**Floating-point:** A type that represents numbers with fractional parts.

**String:** A type that represents sequences of characters.

**Variable:** A name that refers to a value.

**Statement:** A section of code that represents a command or action. So far, the statements we have seen are assignments and print statements.

**Assignment:** A statement that assigns a value to a variable.

**State diagram:** A graphical representation of a set of variables and the values they refer to.

**Keyword:** A reserved word that is used by the compiler to parse a program; you cannot use keywords like `if`, `def`, and `while` as variable names.

**Operator:** A special symbol that represents a simple computation like addition, multiplication, or string concatenation.

**Operand:** One of the values on which an operator operates.

**Floor division:** The operation that divides two numbers and chops off the fraction part.

**Expression:** A combination of variables, operators, and values that represents a single result value.

**Evaluate:** To simplify an expression by performing the operations in order to yield a single value.

**Rules of precedence:** The set of rules governing the order in which expressions involving multiple operators and operands are evaluated.

**Concatenate:** To join two operands end-to-end.

**multiple assignment:** Making more than one assignment to the same variable during the execution of a program.

**update:** An assignment where the new value of the variable depends on the old.

**initialization:** An assignment that gives an initial value to a variable that will be updated.

**increment:** An update that increases the value of a variable (often by one).

**decrement:** An update that decreases the value of a variable.
