Glossary
-
3rd party: the author of code that is neither yourself or part of a standard programming language
-
absolute: A numerical distance from zero (always an unsigned value).
-
absolute address: A specific address (in reference to absolute position) in memory.
-
absolute path: the permanent address or location of a file within a file system
-
abstract: separating the conceptualization from the actual implementation of an idea.
-
accumulator: a variable that is regularly incremented in order to control a while loop
-
accumulator variable: An accumulator variable is a variable that is declared outside of a loop and used within a loop to keep track of information throughout all loop iterations. For example, you could create a 'total' variable outside of a loop and then add values to this variable from within the loop to create a running total of values.
total = 0
while True:
number = int(input("Enter a number, 0 to end: "))
if number == 0:
break
total += number
print ("Your total is", total)
address: A location of data (usually in memory or some other storage device).
algorithm: a series of instructions used to solve a problem
alphanumeric: all the alphabet character (upper and lower case) as well as number characters (A-Z, a-z, and 0-9)
argument: Data that is provided to a function when the function is called.
ascii: American Standard Code for Information Interchange; the encoding scheme between characters to their corresponding numerical values
ascii: American Standard Code for Information Interchange is a character-encoding scheme used to convert printable and control characters to/from numerical equivalents.
assignment operator: The assignment operator is used to tell Python to store information in a variable. The single equal sign ( = ) is the assignment operator in Python. For example:
foo = 5
assignment operator ( = ): The assignment operator is used to tell Python to store information in a variable. The single equal sign ( = ) is the assignment operator in Python.
associated array: see 'dictionary'
augmented assignment: The augmented assignment operators (+=, -=, /=, *=, etc) are 'shortcut' operators for a self-referential assignment. For example, these two statements are the same: a = a + 1 vs. a += 1
augmented assignment operators: The augmented assignment operators (+=, -=, /=, *=, etc) are 'shortcut' operators for a self-referential assignment. For example, these two statements are the same:
a = a + 1
a += 1
base case: the most basic
big o notation: used to evaluate the upper bounds of an algorithms theoretical performance given different situations and determine it's performance to an order (what the "O" stands for) of magnitude.
binary file: a file that is encoded in binary (strings of 0's and 1's)
block: see 'code block'
body: a code block that are associated with a specific program structure such as a function, conditional, or loop structure
boolean: a value of either true or false
boolean expression: an expression that evaluates to a boolean value
boolean logic: calculate logical expressions that result in a boolean value
branch: one possible path of a decision tree
"break": Called from inside a loop, the break statement immediately terminates the loop and causes Python to continue the program starting on the line directly after the loop. For example:
while True:
print (a)
a += 1
if a >= 5:
break
bug: any type of error in your code that causes it to run not as desired
catch: the second half of a try-catch block. indicates what should be done if the operation that was "tried" failed
chained conditional: chaining a series of if else statements together into an if ... elif ... else structure
character: a single symbol, number, letter, or non-printable control character
chr: see 'character'
'chr' function: a function used to convert an ASCII value into a character
close: The 'close' method is a method that can be called on a 'file object'. The 'close' method is used to tell your computer's operating system that you are finished working with a data source. It is good practice to close your data sources when you are finished working with them.accumulator
'close' function: a function in Python used to close a file so that it is no longer accessible and any data being buffered is flushed (any pending read/write operations are completed)
code: short for "source code"
code block: a section of code that is grouped together
codeblock: a series of statements at the same level of indentation
coding style: rules regarding code formatting (spacing, etc.), naming conventions, and other options that don't pertain to logical or syntax issues, but affect code readability
comparison operator: an operator that compares two values
concatenate: to append one string onto another
concatenation: Concatenation is the process of combining two or more Strings into a new, larger String. In Python you can concatenation two Strings using the + operator. For example:
compound_word = "tom" + "or" + "row"
concise: short and to the point. what your programs should be.
conditional statement: a statement that has one or more potential different outcomes usually using some for of if-elseif-else statement
"continue": Called from inside a loop, the continue statement immediately terminates the current iteration of the loop. When called from within a 'while' loop it will cause Python to re-evaluate the condition attached to the 'while' keyword. When called from within a 'for' loop it will cause Python to go to the next item in the current iterable.
cpu: Central Processing Unit, the main processor in a computer that does most of the computations.
crash: when a program terminates due to an uncaught exception or 'bug'
data: information that is stored in digital form
data type: The 'data type' for a value describes the type of data being stored in memory. For example:
a = 5
b = 5.5
c = "five"
debugging: a process used to find errors and problems in your code
decision tree: given a series of conditional statements, a decision tree is all possible paths that could result from following those statements
deep copy: creating a new object and copying over the values
'def' statement: a keyword in Python that is used to define a new function
default parameters: in programming a default parameter is a parameter that has a default value, but that value may be overridden if desired, usually by passing a a parameter that has a value other than the default
defensive coding: writing source code with robustness as a major consideration
delimiter: A delimiter is a sequence of one or more characters used to specify the beginning and ending point in a String. In Python you can use the ", ', """ or ''' characters as String delimiters.
deterministic: a process that is repeatable and predictable
'dict' function: function that creates an empty dictionary
dict object: a object which stores data in a dictionary form and the functions that are used to access and modify that data
'dict()' function: a data structure that maps keys to values
dictionary: a data structure that stores a key which maps to some data
directory: the name for a folder in a file system
.doc: A Microsoft word document
documentation: In programming any comments in the source code including headers, pydocs, and inline comments.
dry principle: Don't Repeat Yourself - a principle that any time you are repeating yourself, your code may need to be refactored to reduce redundancy so that code is easier to maintain and more modular
edge case: inputs at the valid boundary of an algorithm or function
'elif' statement: Short for "else if" is the continuation of an 'if' statement and the code nested inside of an 'elif' statement will execute if the condition specified is the 'if' statement is false, but only if the condition specified by the 'elif' statement is true.
'else' statement: a keyword in Python that optionally follows an 'if' statement or 'elif' statement whose subsequent block of code will only run if the previous if/elif expressions were false.
encode: an additional representation of a value. often numerical representation of text (such as ASCII)
encoding: a different representation of a string or number based on some algorithm
except: a block of code that "catches" exceptions before they crash your program. See "try" for more information.
'except' statement: used to 'catch' or 'handle' different types of exceptions that may be 'thrown' by a program when it tries to do something and fails
exception: an error condition that causes a program to halt while running
exclusive: excluding a value
execute: to run a program
expression: a series of one or more operators and their values to evaluate down to a single value
fence post error: a specific type of off-by-one error
file: a collection of textual characters
file extension: last part of the file name after the final period that denotes the type of the file
finagle's law: "anything that can go wrong, will -- and at the worst possible moment"
float: see 'floating point number'
float function: The 'float' function accepts one value as an argument and attempts to convert that value into a floating point number. If successful it will return a floating point number. For example:
a = "5.5" # string
b = float(a) # b is a float
floating point number: A floating point number is a data type in Python that represents a number with a decimal value. Floating point numbers can be positive, negative or zero, and they will always contain a decimal point (even if it isn't required)
for loop: a code block that is repeated for a set number of iterations
'for' loop: a loop structure used to iterate over a sequence of items
format function: The 'format' function allows you to create formatted versions of integers, floats and Strings. It accepts two arguments - the data to be formatted and a formatting pattern. The format() function always returns a String.
formatting pattern: A string sent as an argument to the 'format' function that determines how a given string will be displayed on the screen.
fractal: a geometric figure, each part of which has the same structure as the whole
function: A function is a pre-written piece of computer code that can be invoked to perform a specific action or set of actions.
function call: The act of invoking a function. When you 'run' a function we say that the function has been 'called'.
functions: a series of statements that together perform an action
global variable: a variable whose scope is accessible throughout the entire program or module (shared between functions in a module)
gui: Graphic User Interface - a program that interacts with the user using some kind of graphical interface besides text
hard drive: data storage device inside computer
hardcoding: specifying literal values into programming code
hashmap: A mapping of specific keys (often generated using a randomized unique 'hash') to a corresponding value. Also, see 'dictionary'.
ide: acronym standing for Integrated Developer Environment
identifier: the name for a variable or function
idle: IDLE is a basic editor and interpreter environment that ships with the standard distribution of Python. It is used to write and execute Python source code.
'if' statement: a conditional statement that controls the flow of a program based on boolean values.
'if' statement: a statement which determines if a boolean expression is true or false
immutable: Incapable of being modified
import: a keyword in Python that is used to gain access to other libraries
inclusive: Including a value
indentation: a way to indicate by using spacing where functions and loops begin and end
index: the position of an element
initialized: something that has been not just defined, but also set-up or configured in a certain way
input function: The 'input' function can be used to ask the user a question. The user can then respond using their keyboard, and the value they supply can be used within your program. 'input' takes one argument (a String which represents the question you wish to ask the user) and it returns a String (the text that the user types in). Since the 'input' function always returns a String it is often necessary to convert its return value into a numeric value using the 'int' or 'float' functions.
int: see 'integer'
int function: The 'int' function accepts one value as an argument and attempts to convert that value into a integer. If successful it will return an integer. For example:
a = "5" # string
b = int(a) # b is an integer
integer: An integer is a data type in Python that represents a whole number. Integers can be positive, negative or zero, and an never contain a decimal point.
interactive mode: IDLE has an interactive interpreter which means that you can try out single lines of code and directly see the result.
interactive shell: a real-time interpreter that allows the execution of certain commands or statements
invalid inputs: input that is incompatible with what the function is expecting (such as sending a string when an int is expected) and will cause the function to crash
item: a unit of data or an object
iterable: An type of data that can be iterated over to give one piece of that data at a time.
iterate: to complete one occurrence of something
iteration: one occurrence of something
iterator: the value that is being iterated on
key: a unique immutable piece of data used to lookup ('unlock') the value associated with that key
keyword: a word that has a special meaning and is reserved for the programming language; keywords can not be used for the names of variables, functions, or other developer named attributes.
library: a collection of functions for use by other programs
limited scope of knowledge: The principle that allows us to use a module or library without knowing exactly how it works (via adequate documentation).
list: a series of items
literal: hard coded values such as "hello" or 5
local variable: a variable that is created within a function and can be accessed only within that function
logic error: A logic error is an error in which your code runs and does not crash, but it does not perform in a desired manner.
logical expression: an to using logical operators to evaluate to a boolean value
logical operator: an operator that performs boolean logic on either one or two values depending on the operator
loop: a structure that executes a codeblock either a given number of times or based on a certain condition
magic numbers: arbitrary values that are hardcoded into programming logic
map: a relationship between two items (usually a directed relationship)
mapping: a correlation between two or more values
memory: a general term for where data can be stored, but often more specially referring to RAM hardware on a computer
method: a function that is part of an object
mixed type expression: A mixed type expression is an expression that involves two or more data types. In Python this usually involves a math expression that contains both integers and floating point numbers.
module: Any of a number of distinct but interrelated units from which a program may be built up or into which a complex activity may be analyzed. In Python, a file containing Python definitions and statements usually of closely related to each other (e.g., math)
modulus operator: an operator that returns the remainder when the first operand is divided by the second operand
mutable: changeable
namespace: a list of the names of all variables, functions, objects etc. that have been defined
natural language: A spoken and/or written language that is used naturally by people in every day life
nest: putting one function or statement within another function or statement
nested: a programming structure that is inside of another programming structure
numeric: a number
numeric literal: A numeric literal is the representation of a numeric value within the source code of a computer program.
object: In programming, an object is a programming data structure that links data with the functions (called 'methods') that access or modify that data.
object oriented programming (oop): data centered approach to program design
off-by-one error: often when a loop iterates the wrong number of times and generates a result that is one off the expected result
oop: Object Oriented Programming - a programming paradigm where most data is stored as objects
'open' function: The 'open' function in Python is used to request access to an external data source. It accepts two arguments - the name of the data source (a filename) and the 'mode' in which you plan on accessing that data source ('w' for writing, 'a' for appending or 'r' for reading). The open function returns a 'file object' which can be used to interface with the desired data source.
'open' function: a function in Python used to open a file for subsequent read, write, or execution
operand: An object that is used in conjunction with an operator to form an expression. For example, the numbers 4 and 5 are operands in this expression: 4 + 5
operating system: the software that supports a computer's basic functions
operator: An operator is a built-in command that performs some action on a series of operands. For example, the addition operator (+) can be used to add two numbers.
'ord' function: in Python a function that returns the ASCII value of a character (short for ordinality)
package: a series of modules or libraries that may be packaged together as one unit
parameter: a value being passed to some kind of programming structure be it a program, function, operator, etc.
parse: a way of splitting a file into meaningful sections for reading or manipulation
path: the heirachical location of a file on a computer's file system
pemdas: Parentheses, Exponents, Multiplication, Division, Addition, Subtraction - the standard order in which mathematical operations are completed
pixel: the smallest unit that is able to be displayed on a physical devices, or the smallest unit of storage in an image
plain-text: a file comprised entirely of ASCII/UTF-8 character set encoded data (e.g. source code)
plain-text file: see 'text file'
prime: a number that is only evenly divisible (no remainder) by the numbers 1 and the number itself.
print function: A built-in Python function that can be used to display printed text to the screen. Print takes any number of arguments of any data type.
pseudo-random number: A number that is not genuinely random but is instead created algorithmically
pseudocode: a language independent way to formulate algorithms, often used in the design process of development
pydoc: documentation system for python that automatically generates documentation from Python module source code comments
random number: A number that is generated in such a way as to exhibit statistical randomness
random number generator: A function that will provide you with random numbers, usually between 0 and 1
'range' function: a function that will iterate a certain number of times over a specified range
'read' function: a function in Python that reads data from a file
recursion: an algorithm which uses itself in the definition of that algorithm
recursive: a type of algorithm that calls itself until reaching a base case
recursive case: in recursion, the part of a recursive algorithm in which the algorithm calls itself
recursive data structure: a data structure which is capable of storing a data structure of it's own type
reference: when you have a pointer to a value rather than the value itself
repetition: the act of repeating the same process multiple times
repetition structure: Repetition structures are used to to repeatedly execute a series of instructions until some condition is met. When the condition is met the loop terminates. Python supports a condition controlled repetition structure ("while" loops) and a count controlled repetition structure ("for" loops)
'return' statement: keyword used at the end of a function to indicate which value will be passed back to the caller of the function
return value: the value that is returned by a function. In effect a function call is subsequently replaced by the value it returns
returns: a type of function that generates some value and then sends it back to the caller of the function (as opposed to a non-returning function)
robust: something that can function under abnormal circumstances
.rtf: A rich-text file
runtime error: A runtime error is any error that causes your program to 'crash' during execution.
scope: the block(s) of code which a variable is accessible
self-documenting code: source code whose variables and function names are descriptive enough that it limits the number of comments needed
self-referential assignment: A self-referential assignment statement is statement in which the variable being modified (on the left side) is included as part of the new value for the variable (on the right side). For example, in this expression the new value of 'a' is equal to the current value of 'a' plus one: a = a + 1
self-referential assignment statement: A self-referential assignment statement is statement in which the variable being modified (on the left side) is included as part of the new value for the variable (on the right side). For example, in this expression the new value of 'a' is equal to the current value of 'a' plus one:
a = a + 1
semantics: the meanings of the words and symbols in a program
sequence: a series of items in a specific order
set: a series of unique items that have not defined order
shallow copy: create new object with references to values in old object
short-circuit: when an engineered or designed path is subverted using a shorter path of less resistance
short-circuit evaluation: in programming, the act of omitting certain operations that are unnecessary due to logical conditions in order to improve performance
skeleton code: source code which provides a general frame where code will be added in later to provide a full implementation
slice: to take a jointed subset of items from an series of pieces of data
source code: the statements in plain-text that comprise a program (or part of a program)
split: Splitting is a technique used to extract portions of a String into a list. In Python we can use the .split() method on the String class to 'cut' a String into smaller pieces based on the location of a separator character. For example, you can take the String 'apple,pear,peach' and split it apart based on the position of the ',' characters. The resulting list would contain 3 elements.
standard library: A collection of modules that are part of the normal installation of a programming language
statement: a single command
step size: a number indicating by how much to jump between numbers when using the range function
str: see 'string'
str function: The 'str' function accepts one value as an argument and converts that value into a String. It returns a String to the caller of the function. For example:
a = 5.5 # float
b = str(a) # b is a String
string: One of the basic data types in Python that is designed to store textual information.
string literal: A string literal is the representation of a String value within the source code of a computer program.
substring: any portion of a string literal
syntax: the rules pertaining to structure and punctuation of statements
syntax error: A syntax error results in not following the rules of the Python language.
tab: a variable width amount of whitespace often equivalent to 4 or 8 spaces, used for indenting codeblocks
tcl/tk: toolkit to provide GUI widgets
text file: a file on a computer that is comprised entirely of ASCII or an extended ASCII encoding (such as UTF-8).
tkinter: a graphical library used by python to display simple window based UIs
traceback: the series of functions that were currently still active up to the point in which an error occurred, the traceback lists these functions in the order in which they were called
traversing hierarchies: to iterate over a series of files
truncate: Shortening something by simply removing certain parts of it.
try: Keyword in Python that is used to try and perform a statement that may fail. You can then catch that failure instead of the program crashing.
'try' statement: used when some code may cause an exception to avoid a program from crashing
turtle: a Python module that allows for basic graphical representation for drawing simple geometric patterns such as lines.
ui: User Interface
unit test: a series of tests designed to test all possible conditions for a given unit (function, object, etc.) to ensure robust code development
unit testing: s a software testing method by which individual units of source code, sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures are tested to determine if they are fit for use.
url: Universal Resource Locator - a standard file format specification that is used to describe the location of a resource be it a local file, a website stream, or some other resource
urllib: in Python, a library used to access URLs
value: a unit of data
variable: A variable is a storage location and an associated symbolic name (an identifier) which contains some known or unknown quantity or information.
'while' loop: The 'while' keyword in Python is used to define a condition controlled loop. 'while' keywords must always be followed by a boolean expression. Statements indented under a 'while' keyword are executed as long as the condition attached to the 'while' keyword evaluates to True.
while loop: a repetition structure that repeats so long as a specified condition evaluates to 'true'
whitespace: any type of space characters including spaces, tabs, new lines, etc.
whole number: A whole number is any non-negative numeric value that doesn't contain a decimal point({0, 1, 2, 3, ...}).
wildcard: a character that means it should match everything, on most systems that character is the asterisk ('*')
write: The 'write' method is a method that can be called on a 'file object'. The 'write' method is used to write data to a data source once it has been opened for writing or appending.
'write' function: see write