Python chapter 1-6
Modulus operator
Also called remainder operator or integer remainder operator. Gives the remainder after performing integer division
Object
Also known as a data object (or data value). The fundamental things that programs are designed to manipulate (or that programmers ask to things for them)
Bug
An error in a program
Semantic error
An error in a program that makes it do something other than what the programmer intended.
Syntax error
An error in a program that makes it impossible to parse- and there for impossible to interpret
Runtime error
An error that does not occur until the program has started to execute but that prevents the program from continuing.
boolean expression
An expression that is either true or false.
Statement
An instruction that the python interpreter can execute. So far we have only seen the assignment statement, but we will soon meet the import statement and the for statement
Codelens
An interactive environment that allows the user to control the step by step execution of python program
Python shell
An interactive user interface to the python interpreter. The user of a python shell types commands at the prompt >>> and presses the return key to send these commands immediately to the interpreter for processing.
Byte code
An intermediate language between source code and object code. Many modern languages first compile source code into byte code and then interpret the byte code with a program called q virtual machine
invoke
An object has methods. We use the verb invoke to mean activate the method. Invoking a method is done by putting parentheses after the method name, with some possible arguments. So wn.exitonclick() is an invocation of the exitonclick method.
instance
An object that belongs to a class. tess and alex are different instances of the class Turtle
Integer division
An operation that divides one integer by another and yields an integer. Integer division yield A only the whole number of times that the numerator is divisible by the denominator and discard any remainder
Exception
Another name for a runtime error.
Excitable
Another name for object code that is ready to be excuted
loop body
Any number of statements nested inside a loop. The nesting is indicated by the fact that the statements are indented under the for loop statement.
Formal language
Any one of the languages that people have designed for specific purposes,such as representing mathematical ideas or computer programs, all programming languages are formal languages.
Natural language
Any one of the languages that people speak that evolved naturally
Increment
Both as noun and as a verb, increment means to increase by 1
composition (of functions)
Calling one function from within the body of another, or using the return value of one function as an argument to the call of another.
scaffolding
Code that is used during program development to assist with development and debugging. The unit test code that we added in this chapter are examples of scaffolding.
Decrement
Decrease by 1
Comment
Information in a program that is meant for other programmers (or anyone reading the source code) and has no effect on the execution of the program.
Comment
Information in a program that is ment for other programmers (or anyone reading the source code) and has no effect on the execution of the program
Token
One of the basic elements of the syntactic structure of a program, analogous to a word in a natural language.
comparison operator
One of the operators that compares two values: ==, !=, >, <, >=, and <=.
branch
One of the possible paths of the flow of execution determined by conditional execution.
Operand
One of the values on which an operator operates
dead code
Part of a program that can never be executed, often because it appears after a return statement.
attribute
Some state or value that belongs to a particular object. For example, tess has a color.
body
The block of statements in a compound statement that follows the header.
condition
The boolean expression in a conditional statement that determines which branch is executed.
state
The collection of attribute values that a specific data object maintains.
sequential
The default behavior of a program. Step by step processing of algorithm.
Semantic
The meaning of a program
Object code
The output of compiler after it translates the program
Debugging
The process of finding and removing any of the three kinds if programming errors.
Problem solving
The process of formulating a problem, finding a solution, and expressing the solution
Rule of precedence
The set of rules governing the order in which expressions involving multiple operators and operands are evaluated.
Syntax
The structure of a program
return value
The value provided as the result of a function call.
boolean value
There are exactly two boolean values: True and False. Boolean values result when a boolean expression is evaluated by the Python interepreter. They have type bool.
Parse
To examine a program and analyze the syntactic structure
Interpret
To excite a program in high level language by translating it one line at a time.
Initialization (of a variable)
To initialize a variable is to give it an initial value. Since python variables don't exist until they are assigned values, they are initialized when they are created. In other programming languages this is not the case, and variables can be created without being initialized in which case they have either default or garbage values
Evaluate
To simplify an expression by performing the operation in order to yield a single value
Compile
To translate a program written in a high level language into a low level language all at once, in preparation for later execution
Prompt string
Used during interactive input to provide the user with hints as to what type of value to enter
block
A group of consecutive statements with the same indentation.
Variable name
A name given to a variable. Variable names in python consist of a sequence of letters and digits that begin with a letter. In best programming practice, variable names should be chosen so that they describe their use in the program, making the program self documenting
Variable
A name that refers to a value
Value
A number or string (or other things to be named later) that can be stored in a variable or computer in an expression
random number
A number that is generated in such a way as to exhibit statistical randomness.
pseudo-random number
A number that is not genuinely random but is instead created algorithmically.
Reference diagram
A picture showing a variable with an arrow pointing to the value (object) that the variable refers to. See also state snapshot
documentation
A place where you can go to get detailed information about aspects of your programming language.
deterministic
A process that is repeatable and predictable.
incremental development
A program development plan intended to simplify debugging by adding and testing only a small amount of code at a time.
Source code
A program, stored in a file, in high level language before being compiled or interpreted
High-level language
A programming language like python that is designed to be easy for humans to read and write.
Low level language
A programming language that is designed to be easy for computer to execute; also called machine language or assembly language
Probability
A property of a program that can run in more than one kind of computer.
Str
A python data type that holds a string of characters
Int
A python data type that holds positive and negative whole numbers
Float
A python data type which stores floating-point numbers. Floating-point numbers are stored internally in two parts: a base and exponent. When printed in the standard format, they look like decimal numbers. Beware of rounding errors when you use float s, and rember that they are only approximate values.
Keyword
A reserved word that is used by the compiler to parse program; you cannot use keywords like if, def, and while as variable names
Program
A sequence of instructions that specifies to a computer actions and computations to be performed.
Data type
A set a value. The type of a value determines how it can be used in expressions. So far, the types you have seen are integers (int), floating-point numbers (float), and strings (str)
None
A special Python value. One use in Python is that it is returned by functions that do not execute a return statement with a return argument.
Operator
A special symbol that represents a simple computation like addition, multiplication, or string concatenation
for loop
A statement in Python for convenient repetition of statements in the body of the loop.
Assignment statement
A statement that assigns a value to a name (variable). To the left of the assignment operators, = is a name. To the right of the assignment token is an expression which is evaluated by the python interpreter and then assigned to the name. The difference between the left and right hand sides of the assignment statement is often conruwiky to new programmers n = n + 1 n plays a very different role in each side of the =. On the right it is a value and makes up part of the expression which will be evaluated by the python interpreter before assigning it to the name on the left
conditional statement
A statement that controls the flow of execution depending on some condition. In Python the keywords if, elif, and else are used for conditional statements.
Shell mode
A style of using python where we type expressions at the command prompt, and the result are shown immediately. Contrast with Source code and see the entry under python shell.
canvas
A surface within a window where drawing takes place.
Activecode
A unique interpreter environment that allows python to be excited from within a web browswer.
loop variable
A variable used as part of a for loop. It is assigned a different value on each iteration of the loop, and is used as part of the terminating condition of the loop.
temporary variable
A variable used to store an intermediate value in a complex calculation.
State snapshot
A graphical representation of a set of variables and the values to which they refer, taken at a particular instant during the prohtams execution
chatterbox function
A function which interacts with the user (using input or print) when it should not. Silent functions that just convert their input arguments into their output results are usually the most useful ones.
Print function
A function used in program or script that causes the python interpreter to display a value on its output device
Algorithm
A general step by step process for solving a problem
Assignment token
= is pythons assignment token, which should not be confused with the mathematical comparison operator using the same symbol
object
A "thing" to which a variable can refer. This could be a screen window, or one of the turtles you have created.
iteration
A basic building block for algorithms (programs). It allows steps to be repeated. Sometimes called looping.
range
A built-in function in Python for generating sequences of integers. It is especially useful when we need to write a for loop that executes a fixed number of times.
standard library
A collection of modules that are part of the normal installation of Python.
Expression
A combination of operators and operands (variable and values) that represents a single result value. Expressions are evaluated to give that result.
terminating condition
A condition that occurs which causes a loop to stop repeating its body. In the for loops we saw in this chapter, the terminating condition has been when there are no more elements to assign to the loop variable.
chained conditional
A conditional branch with more than two possible flows of execution. In Python chained conditionals are written with if ... elif ... else statements.
turtle
A data object used to create pictures (known as turtle graphics).
module
A file containing Python definitions and statements intended for use in other Python programs. The contents of a module are made available to the other program by using the import statement.
Programming language
A formal notation for representing solutions
Type conversion function
A function that can convert a data value from one type to another
method
A function that is attached to an object. Invoking or activating the method causes the object to respond in some way, e.g. forward is the method when we say tess.forward(100).
boolean function
A function that returns a boolean value. The only possible values of the bool type are False and True.
random number generator
A function that will provide you with random numbers, usually between 0 and 1.
fruitful function
A function that yields a return value instead of None.