一、The way of the program
problem solving: The process of formulating a problem, finding a solution, and expressing the solution.
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 a computer to execute; also called “machine language” or
“assembly language.”
portability: A property of a program that can run on more than one kind of computer.
interpret: To execute a program in a high-level language by translating it one line at a time.
compile: To translate a program written in a high-level language
into a low-level language all at once, in preparation for later
execution.
source code: A program in a high-level language before being compiled.
object code: The output of the compiler after it translates the program.
executable: Another name for object code that is ready to be executed.
prompt: Characters displayed by the interpreter to indicate that it is ready to take input from the user.
script: A program stored in a file (usually one that will be interpreted).
program: A set of instructions that specifies a computation.
algorithm: A general process for solving a category of problems.
bug: An error in a program.
debugging: The process of finding and removing any of the three kinds of programming errors.
syntax: The structure of a program.
syntax error: An error in a program that makes it impossible to parse (and therefore impossible to interpret).
exception: An error that is detected while the program is running.
semantics: The meaning of a program.
semantic error: An error in a program that makes it do something other than what the programmer intended.
natural language: Any one of the languages that people speak that evolved naturally.
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.
token: One of the basic elements of the syntactic structure of a program, analogous to a word in a natural language.
parse: To examine a program and analyze the syntactic structure.
print statement: An instruction that causes the Python interpreter to display a value on the screen.

二、Variables, expressions and statements
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.
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.

三、Functions
function: A named sequence of statements that performs some
useful operation.Functions may or may not take arguments and may or may
not produce a result.
function definition: A statement that creates a new function, specifying its name, parameters, and the statements it executes.
function object: A value created by a function definition. The name of the function is a variable that refers to a function object.
header: The first line of a function definition.
body: The sequence of statements inside a function definition.
parameter: A name used inside a function to refer to the value passed as an argument.
function call: A statement that executes a function. It consists of the function name followed by an argument list.
argument: A value provided to a function when the function is
called. This value is assigned to the corresponding parameter in the
function.
local variable: A variable defined inside a function. A local variable can only be used inside its function.
return value: The result of a function. If a function call is used as an expression, the return value is the value of the expression.
fruitful function: A function that returns a value.
void function: A function that doesn’t return a value.
module: A file that contains a collection of related functions and other definitions.
import statement: A statement that reads a module file and creates a module object.
module object: A value created by an import statement that provides access to the values defined in a module.
dot notation: The syntax for calling a function in another module
by specifying the module name followed by a dot (period) and the
function name.
composition: Using an expression as part of a larger expression, or a statement as part of a larger statement.
flow of execution: The order in which statements are executed during a program run.
stack diagram: A graphical representation of a stack of functions, their variables, and the values they refer to.
frame: A box in a stack diagram that represents a function call. It contains the local variables and parameters of the function.
traceback: A list of the functions that are executing, printed when an exception occurs.

四、Case study: interface design
instance: A member of a set. The TurtleWorld in this chapter is a member of the set of TurtleWorlds.
loop: A part of a program that can execute repeatedly.
encapsulation: The process of transforming a sequence of statements into a function definition.
generalization: The process of replacing something unnecessarily
specific (like a number) with something appropriately general (like a
variable or parameter).
interface: A description of how to use a function, including the name and descriptions of the arguments and return value.
development plan: A process for writing programs.
docstring: A string that appears in a function definition to document the function’s interface.

五、Conditionals and recursion
modulus operator: An operator, denoted with a percent sign (%),
that works on integers and yields the remainder when one number is
divided by another.
boolean expression: An expression whose value is either True or False.
comparison operator: One of the operators that compares its operands: ==, !=, >, <,>=, and <=.
logical operator: One of the operators that combines boolean expressions: and, or,and not.
conditional statement: A statement that controls the flow of execution depending on some condition.
condition: The boolean expression in a conditional statement that determines which branch is executed.
compound statement: A statement that consists of a header and a
body. The header ends with a colon (:). The body is indented relative to
the header.
body: The sequence of statements within a compound statement.
branch: One of the alternative sequences of statements in a conditional statement.
chained conditional: A conditional statement with a series of alternative branches.
recursion: The process of calling the function that is currently executing.
base case: A conditional branch in a recursive function that does not make a recursive call.
infinite recursion: A function that calls itself recursively
without ever reaching the base case. Eventually, an infinite recursion
causes a runtime error.

六、Fruitful functions
temporary variable: A variable used to store an intermediate value in a complex calculation.
dead code: Part of a program that can never be executed, often because it appears after a return statement.
None: A special value returned by functions that have no return statement or a return statement without an argument.
incremental development: A programdevelopment plan intended to avoid debugging by adding and testing only a small amount of code at a time.
scaffolding: Code that is used during program development but is not part of the final version.
guardian: A programming pattern that uses a conditional statement to check for and handle circumstances that might cause an error.

七、Iteration
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.
initialize: 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.
iteration: Repeated execution of a set of statements using either a recursive function call or a loop.
infinite loop: A loop in which the terminating condition is never satisfied.

八、Strings
object: Something a variable can refer to. For now, you can use “object” and “value”interchangeably.
sequence: An ordered set; that is, a set of values where each value is identified by an integer index.
item: One of the values in a sequence.
index: An integer value used to select an item in a sequence, such as a character in a string.
slice: A part of a string specified by a range of indices.
empty string: A string with no characters and length 0, represented by two quotation marks.
immutable: The property of a sequence whose items cannot be assigned.
traverse: To iterate through the items in a sequence, performing a similar operation on each.
search: A pattern of traversal that stops when it finds what it is looking for.
counter: A variable used to count something, usually initialized to zero and then incremented.
method: A function that is associated with an object and called using dot notation.
invocation: A statement that calls a method.

九、Case study: word play
file object: A value that represents an open file.
problem recognition: A way of solving a problem by expressing it as an instance of a previously-solved problem.
special case: A test case that is atypical or non-obvious (and less likely to be handled correctly).

十、Lists
list: A sequence of values.
element: One of the values in a list (or other sequence), also called items.
index: An integer value that indicates an element in a list.
nested list: A list that is an element of another list.
list traversal: The sequential accessing of each element in a list.
mapping: A relationship in which each element of one set
corresponds to an element of another set. For example, a list is a
mapping from indices to elements.
accumulator: A variable used in a loop to add up or accumulate a result.
reduce: A processing pattern that traverses a sequence and accumulates the elements into a single result.
map: A processing pattern that traverses a sequence and performs an operation on each element.
filter: A processing pattern that traverses a list and selects the elements that satisfy some criterion.
object: Something a variable can refer to. An object has a type and a value.
equivalent: Having the same value.
identical: Being the same object (which implies equivalence).
reference: The association between a variable and its value.
aliasing: A circumstance where two variables refer to the same object.
delimiter: A character or string used to indicate where a string should be split.

十一、Dictionaries
dictionary: A mapping from a set of keys to their corresponding values.
key-value pair: The representation of the mapping from a key to a value.
item: Another name for a key-value pair.
key: An object that appears in a dictionary as the first part of a key-value pair.
value: An object that appears in a dictionary as the second part
of a key-value pair.This is more specific than our previous use of the
word “value.”
implementation: A way of performing a computation.
hashtable: The algorithm used to implement Python dictionaries.
hash function: A function used by a hashtable to compute the location for a key.
hashable: A type that has a hash function. Immutable types like
integers, floats and strings are hashable; mutable types like lists and
dictionaries are not.
lookup: A dictionary operation that takes a key and finds the corresponding value.
reverse lookup: A dictionary operation that takes a value and finds one or more keys that map to it.
singleton: A list (or other sequence) with a single element.
call graph: A diagram that shows every frame created during the execution of a program, with an arrow from each caller to each callee.
histogram: A set of counters.
hint: A computed value stored to avoid unnecessary future computation.
global variable: A variable defined outside a function. Global variables can be accessed from any function.

十二、Tuples
tuple: An immutable sequence of elements.
tuple assignment: An assignment with a sequence on the right side
and a tuple of variables on the left. The right side is evaluated and
then its elements are assigned to the variables on the left.

十三、Case study: data structure selection
DSU: Abbreviation of “decorate-sort-undecorate,” a processing
pattern that involves building a list of tuples, sorting, and (often)
extracting part of the result.
deterministic: Pertaining to a program that does the same thing each time it runs,given the same inputs.
pseudorandom: Pertaining to a sequence of numbers that appear to be random, but are generated by a deterministic program.
default value: The value given to an optional parameter if no argument is provided.
override: To replace a default value with an argument.
data structure: Any collection of values, including sequences and dictionaries.
benchmarking: The process of choosing between data structures by
implementing alternatives and testing them on a sample of the possible
inputs.

十四、Files
persistent: Pertaining to a program that runs indefinitely and keeps at least some of its data in permanent storage.
format operator: An operator, %, that takes a format string and a
tuple and generates a string that includes the elements of the tuple
formatted as specified by the format string.
format string: A string, used with the format operator, that contains format sequences.
format sequence: A sequence of characters in a format string, like %d that specifies how a value should be formatted.
text file: A sequence of characters stored in non-volatile storage like a hard drive.
directory: A named collection of files, also called a folder.
path: A string that identifies a file.
relative path: A path that starts from the current directory.
absolute path: A path that starts from the topmost directory in the file system.
catch: To prevent an exception from terminating a program using the try and except statements.
database: A file whose contents are organized like a dictionary with keys that correspond to values.

十五、Classes and objects
class: A user-defined type. A class definition creates a new class object.
class object: An object that contains information about a user-defined time. The class object can be used to create instances of the type.
instance: An object that belongs to a class.
attribute: One of the named values associated with an object.
shallow copy: To copy the contents of an object, including any
references to embedded objects; implemented by the copy function in the
copy module.
deep copy: To copy the contents of an object as well as any
embedded objects, and any objects embedded in them, and so on;
implemented by the deepcopy function in
the copy module.
object diagram: A diagram that shows objects, their attributes, and the values of the attributes.

十六、Classes and functions
prototype and patch: A development plan that involves writing a rough draft of a program, testing, and correcting errors as they are found.
planned development: A development plan that involves high-level
insight into the problem and more planning than incremental development
or prototype development.
pure function: A function that does not modify any of the objects it receives as arguments. Most pure functions are fruitful.
modifier: A function that changes one or more of the objects it receives as arguments.Most modifiers are fruitless.
functional programming style: A style of program design in which the majority of functions are pure.

十七、Classes and methods
object-oriented language: A language that provides features, such as user-defined classes and inheritance, that facilitate object-oriented programming.
object-oriented programming: A style of programming in which data and the operations that manipulate it are organized into classes and methods.
method: A function that is defined inside a class definition and is invoked on instances of that class.
subject: The object a method is invoked on.
operator overloading: Changing the behavior of an operator like + so it works with a user-defined type.
type-based dispatch: A programming pattern that checks the type of an operand and invokes different functions for different types.
polymorphic: Pertaining to a function that can work with more than one type.

十八、Inheritance
encode: To represent one set of values using another set of values by constructing a mapping between them.
class attribute: An attribute associated with a class object. Class attributes are defined inside a class definition but outside any method.
instance attribute: An attribute associated with an instance of a class.
veneer: A method or function that provides a different interface to another function without doing much computation.
inheritance: The ability to define a new class that is a modified version of a previously defined class.
parent class: The class from which a child class inherits.
child class: A new class created by inheriting from an existing class; also called a “subclass.”
IS-A relationship: The relationship between a child class and its parent class.
HAS-A relationship: The relationship between two classes where instances of one class contain references to instances of the other.
class diagram: A diagram that shows the classes in a program and the relationships between them.
multiplicity: A notation in a class diagram that shows, for a
HAS-A relationship, how many references there are to instances of
another class.

十九、Case study: Tkinter
GUI: A graphical user interface.
widget: One of the elements that makes up a GUI, including buttons, menus, text entry fields, etc.
option: A value that controls the appearance or function of a widget.
keyword argument: An argument that indicates the parameter name as part of the function call.
callback: A function associated with a widget that is called when the user performs an action.
bound method: A method associated with a particular instance.
event-driven programming: A style of programming in which the flow of execution is determined by user actions.
event: A user action, like a mouse click or key press, that causes a GUI to respond.
event loop: An infinite loop that waits for user actions and responds.
item: A graphical element on a Canvas widget.
bounding box: A rectangle that encloses a set of items, usually specified by two opposing corners.
pack: To arrange and display the elements of a GUI.
geometry manager: A system for packing widgets.
binding: An association between a widget, an event, and an event
handler. The event handler is called when the the event occurs in the
widget.

Think Python Glossary的更多相关文章

  1. Python基础-函数(function)

    这里我们看看Python中函数定义的语法,函数的局部变量,函数的参数,Python中函数的形参可以有默认值,参数的传递是赋值操作,在函数调用时,可以对实参进行打包和解包  1,函数定义 关键字def引 ...

  2. Python字典 (dictionary)

    字典dict,是Python唯一的标准mapping类型,也是内置在Python解释器中的. mapping object把一个可哈希的值(hashable value)映射到一个任意的object上 ...

  3. python官方文档

    Tutorialstart here Library Referencekeep this under your pillow Language Referencedescribes syntax a ...

  4. Python 学习教程汇总

    Python快速教程http://www.cnblogs.com/vamei/archive/2012/09/13/2682778.html简明Python教程https://bop.molun.ne ...

  5. [Python]Python中的包(Package)

    参考官方文档中的Module和Glosssary中的描述.Module: https://docs.python.org/3/tutorial/modules.html#packagesGlossar ...

  6. Python Iterables Iterators Generators

    container 某些对象包含其它对象的引用,这个包含其它对象引用的对象叫容器.例如list可以包含int对象,或者由其它数据类型(或数据结构)的对象组成一个list. 对其他对象的引用是容器值的一 ...

  7. python之 可迭代 迭代器 生成器

    0. 1.总结 (1) (a)iterable 可迭代(对象) 能力属性 指一个对象能够一次返回它的一个成员,for i in a_list 而不需要通过下标完成迭代. 例子包括所有序列类型(list ...

  8. python之GIL官方文档 global interpreter lock 全局解释器锁

    0.目录 2. 术语 global interpreter lock 全局解释器锁3. C-API 还有更多没有仔细看4. 定期切换线程5. wiki.python6. python.doc FAQ ...

  9. Python开发【数据结构】:字典内部剖析

    字典内部剖析 开篇先提出几个疑问: 所有的类型都可以做字典的键值吗? 字典的存储结构是如何实现的? 散列冲突时如何解决? 最近看了一些关于字典的文章,决定通过自己的理解把他们写下来:本章将详细阐述上面 ...

随机推荐

  1. HDU 1452 Happy 2004(因子和的积性函数)

    题目链接 题意 : 给你一个X,让你求出2004的X次方的所有因子之和,然后对29取余. 思路 : 原来这就是积性函数,点这里这里这里,这里讲得很详细. 在非数论的领域,积性函数指所有对于任何a,b都 ...

  2. window.open(url, "_black" , spec)

    var url = "${request.contextPath}/test/openWindow.action?number="+number; var spec = " ...

  3. mac 下周期调度命令或脚本

    crontab 是在linux服务器上部署定时任务的方法 0 5 * * * /usr/bin/python /data/www/tools/mysql_backup.py cmd之前有5个项目要填, ...

  4. untiy 插件工具: 游戏中 策划数据Excel 导出到项目中

    https://github.com/zhutaorun/Excel2Unity,这个项目是直接下载就可以用的, 其中原理和相关的解释 http://blog.csdn.net/neil3d/arti ...

  5. 从一点儿不会开始——Unity3D游戏开发学习(一)

    一些废话 我是一个windows phone.windows 8的忠实粉丝,也是一个开发者,开发数个windows phone应用和两个windows 8应用.对开发游戏一直抱有强烈兴趣和愿望,但奈何 ...

  6. Java API —— JDK5新特性

    JDK5新特性         自动拆装箱.泛型.增强for.静态导入.可变参数.枚举   1.增强for概述         1)简化数组和Collection集合的遍历         2)格式: ...

  7. Mysql:常用代码

    C/S: Client Server B/S: Brower Server Php主要实现B/S .net IIS Jave TomCat LAMP:L Mysql:常用代码 Create table ...

  8. .net 生成拼音码与五笔码

    首先加入配置文件: <?xml version="1.0" encoding="utf-8" ?> <CodeConfig> <S ...

  9. 04-语言入门-04-Fibonacci数

    地址: http://acm.nyist.net/JudgeOnline/problem.php?pid=13    描述 无穷数列1,1,2,3,5,8,13,21,34,55...称为Fibona ...

  10. 【Latex】如何在Latex中插入伪代码 —— clrscode3e

    1. 简介clrscode3e是<算法导论(第三版)>使用的伪代码的宏包,clrs其实表示的是Cormen.Leiserson.Rivest和Stein.它有个更老的版本clrscode, ...