第1章Python编程概述1
1.1计算机基础知识1
1.1.1计算机组成1
1.1.2软件和程序2
1.1.3程序设计语言2
1.2Python的发展历史3
1.3Python的特点4
1.4Python的应用场合5
1.5Python解释器6
1.5.1在Ubuntu下安装Python6
1.5.2在Windows下安装Python7
1.6Python编辑器8
1.6.1IDLE8
1.6.2Notepad++9
1.6.3Ulipad10
1.6.4Eclipse+PyDev12
1.6.5Vim和emacs13
1.7Python与其他语言关系14
1.8习题15
第2章数据类型和表达式16
2.1数据类型16
2.1.1数值16
2.1.2布尔型17
2.1.3字符串17
2.1.4空值17
2.2变量与常量17
2.2.1标识符17
2.2.2变量182.2.3常量18
2.3运算符18
2.3.1算术运算符19
2.3.2关系运算符19
2.3.3逻辑运算符20
2.3.4身份运算符20
2.3.5位运算符20
2.4表达式21
2.4.1表达式组成21
2.4.2优先级22
2.4.3结合性22
2.5系统函数22
2.5.1数学函数22
2.5.2转换函数23
2.5.3随机数函数23
2.6Python字符24
2.6.1保留字符24
2.6.2转义字符24
2.7习题25
第3章顺序与选择结构26
3.1程序设计过程26
3.1.1三种基本逻辑结构26
3.1.2程序流程图26
3.1.3Python程序设计流程27
3.2代码书写规则28
3.2.1缩进28
3.2.2逻辑行与物理行28
3.2.3空行29
3.2.4注释29
3.3顺序结构程序设计30
3.3.1赋值语句30
3.3.2输入与输出31
3.3.3顺序结构32
3.4选择结构程序设计33
3.4.1单分支33
3.4.2双分支35
3.4.3多分支35
3.4.4选择结构嵌套36
3.5程序设计方法与风格39
3.5.1语句构造方法39
3.5.2编程规范40
3.6习题41
第4章循环结构42
4.1循环42
4.1.1循环引入42
4.1.2循环概述42
4.2while语句42
4.2.1确定次数循环43
4.2.2不确定次数循环45
4.2.3无限循环49
4.3for语句49
4.4辅助语句51
4.4.1break语句51
4.4.2continue语句52
4.4.3else语句53
4.4.4pass语句53
4.5循环嵌套54
4.6习题58
第5章序列与字典59
5.1序列59
5.1.1序列概念59
5.1.2序列通用操作59
5.2列表61
5.2.1列表概念61
5.2.2列表操作62
5.3元组65
5.3.1元组概念65
5.3.2元组操作66
5.4字符串67
5.4.1字符串操作67
5.4.2字符串、列表、元组转换68
5.5字典69
5.5.1字典概念69
5.5.2字典操作70
5.6习题73
第6章数据结构与算法74
6.1数据结构74
6.1.1线性结构74
6.1.2非线性结构75
6.1.3序列与数据结构76
6.2查找和排序76
6.2.1查找76
6.2.2排序78
6.3算法79
6.3.1五个特性79
6.3.2三个层次79
6.4有特点的数80
6.4.1最小值和最大值80
6.4.2完全数81
6.4.3水仙花数81
6.4.4与素数有关的数82
6.5经典趣味题84
6.5.1鸡兔问题84
6.5.2百钱买百鸡85
6.5.3猴子吃桃86
6.6习题86
第7章函数与模块88
7.1函数88
7.1.1函数概念88
7.1.2函数声明和调用88
7.1.3实参和形参90
7.1.4引用传参90
7.1.5return语句91
7.1.6函数是对象91
7.2参数类型92
7.2.1必备参数92
7.2.2默认参数92
7.2.3关键参数93
7.2.4可变长参数93
7.3两类特殊函数94
7.3.1lambda函数94
7.3.2递归函数95
7.4变量作用域96
7.4.1局部变量96
7.4.2全局变量97
7.5模块98
7.5.1命名空间98
7.5.2模块定义与导入98
7.6习题100
第8章面向对象程序设计基础101
8.1面向对象概述101
8.1.1基本概念101
8.1.2与面向过程不同102
8.1.3面向对象三大特性102
8.2类和对象103
8.3类属性与实例属性104
8.3.1实例属性104
8.3.2类属性105
8.4方法106
8.4.1对象方法107
8.4.2类方法107
8.4.3静态方法108
8.5构造函数与析构函数108
8.5.1构造函数108
8.5.2析构函数109
8.6继承性110
8.7多态性113
8.7.1方法重载113
8.7.2运算符重载113
8.8习题114
第9章文件115
9.1文件概念115
9.1.1字符编码115
9.1.2文件分类116
9.2文件打开和关闭116
9.3文件操作118
9.3.1写操作118
9.3.2读操作118
9.3.3文件指针119
9.4存储器120
9.5与文件相关的模块121
9.5.1os模块121
9.5.2os.path模块121
9.5.3shutil模块122
9.6习题123
第10章用户界面设计124
10.1概述124
10.1.1界面设计原则124
10.1.2常用GUI工具124
10.2Tkinter编程125
10.2.1Tkinter简介125
10.2.2实例讲解126
10.3wxPython编程127
10.3.1wxPython简介127
10.3.2wxPython开发流程128
10.3.3Frame创建与使用128
10.4控件130
10.4.1静态文本130
10.4.2输入文本131
10.4.3命令按钮132
10.4.4滑块、微调控制框133
10.4.5单选钮和复选框135
10.4.6列表框和组合框136
10.4.7菜单138
10.4.8工具栏和状态栏140
10.5对话框141
10.5.1警告对话框142
10.5.2单行文本对话框143
10.5.3列表选择对话框143
10.6习题144
第11章绘图146
11.1绘图概念146
11.1.1绘图简介146
11.1.2坐标系146
11.2海龟绘图147
11.2.1turtle绘图方法147
11.2.2实例讲解147
11.3Canvas绘图150
11.3.1Canvas绘图方法150
11.3.2实例讲解151
11.4Numpy与Matplotlib152
11.4.1Numpy简介152
11.4.2Matplotlib简介153
11.5习题155
第12章数据库应用156
12.1数据库概念156
12.1.1数据库管理系统156
12.1.2关系型数据库156
12.1.3结构化查询语言157
12.2Python数据库访问模块159
12.2.1通用数据库访问模块159
12.2.2专用数据库访问模块159
12.3Python操作数据库160
12.3.1连接对象和游标160
12.3.2操作数据库过程161
12.4Python与两个数据库161
12.4.1SQLite3161
12.4.2MySQL162
12.5习题163
第13章网络编程164
13.1网络基础知识164
13.2TCP/IP164
13.2.1TCP/IP四层模型165
13.2.2IP地址和端口号165
13.3Socket166
13.3.1TCP连接166
13.3.2UDP连接168
13.4电子邮件169
13.4.1SMTP发送邮件169
13.4.2POP3收取邮件170
13.5习题171
第14章异常处理172
14.1错误类型172
14.1.1语法错误172
14.1.2运行时错误172
14.1.3逻辑错误173
14.2捕获和处理异常173
14.2.1try…except…else语句173
14.2.2try…finally语句175
14.3两个特殊语句176
14.3.1raise语句176
14.3.2with语句178
14.4调试178
14.4.1调试策略178
14.4.2IDLE调试器179
14.5习题179
参考文献180第1章Python编程概述1
1.1计算机基础知识1
1.1.1计算机组成1
1.1.2软件和程序2
1.1.3程序设计语言2
1.2Python的发展历史3
1.3Python的特点4
1.4Python的应用场合5
1.5Python解释器6
1.5.1ubuntu下安装Python6
1.5.2Windows下安装Python6
1.6Python编辑器8
1.6.1IDLE8
1.6.2notepad++9
1.6.3Ulipad10
1.6.4Eclipse+Pydev13
1.6.5Vim和emacs14
1.7Python与其他语言关系15
1.8习题16
第2章数据类型和表达式17
2.1数据类型17
2.1.1数值17
2.1.2布尔型18
2.1.3字符串18
2.1.4空值18
2.2变量与常量18
2.2.1标识符18
2.2.2变量192.2.3常量19
2.3运算符19
2.3.1算术运算符20
2.3.2关系运算符20
2.3.3逻辑运算符21
2.3.4身份运算符21
2.3.5位运算符21
2.4表达式22
2.4.1表达式组成22
2.4.2优先级23
2.4.3结合性23
2.5系统函数23
2.5.1数学函数23
2.5.2转换函数24
2.5.3随机数函数24
2.6Python字符25
2.6.1保留字符25
2.6.2转义字符25
2.7习题26
第3章顺序与选择结构27
3.1程序设计过程27
3.1.1三种基本逻辑结构27
3.1.2程序流程图27
3.1.3Python程序设计流程28
3.2代码书写规则29
3.2.1缩进29
3.2.2逻辑行与物理行29
3.2.3空行30
3.2.4注释30
3.3顺序结构程序设计31
3.3.1赋值语句31
3.3.2输入与输出32
3.3.3顺序结构33
3.4选择结构程序设计34
3.4.1单分支34
3.4.2双分支36
3.4.3多分支36
3.4.4选择结构嵌套37
3.5程序设计方法与风格40
3.5.1语句构造方法40
3.5.2学习规范41
3.6习题42
第4章循环结构43
4.1循环43
4.1.1循环引入43
4.1.2循环概述43
4.2while语句43
4.2.1解决确定次数循环44
4.2.2解决不确定次数循环47
4.2.3解决无限循环50
4.3For语句51
4.4辅助语句53
4.4.1break语句53
4.4.2continue语句54
4.4.3else语句55
4.4.4pass语句55
4.5循环嵌套56
4.6习题60
第5章序列与字典61
5.1序列61
5.1.1序列概念61
5.1.2序列通用操作61
5.2列表63
5.2.1列表概念63
5.2.2列表操作64
5.3元组68
5.3.1元组概念68
5.3.2元组操作68
5.4字符串69
5.4.1字符串操作69
5.4.2字符串、列表、元组转换70
5.5字典71
5.5.1字典概念71
5.5.2字典操作72
5.6习题76
第6章数据结构与算法77
6.1数据结构77
6.1.1线性结构77
6.1.2非线性结构78
6.1.3序列与数据结构79
6.2查找和排序80
6.2.1查找80
6.2.2排序81
6.3算法82
6.3.1五个特性82
6.3.2三个层次83
6.4有特点的数83
6.4.1最小值和最大值83
6.4.2完全数84
6.4.3水仙花数84
6.4.4与素数有关的数85
6.5经典趣味题87
6.5.1鸡兔问题87
6.5.2百钱买百鸡88
6.5.3猴子吃桃89
6.6习题90
第7章函数与模块91
7.1函数91
7.1.1函数概念91
7.1.2函数声明和调用91
7.1.3实参和形参93
7.1.4引用传参93
7.1.5return语句94
7.1.6函数是对象94
7.2参数类型95
7.2.1必备参数95
7.2.2默认参数95
7.2.3关键参数96
7.2.4可变长参数96
7.3两类特殊函数97
7.3.1lambda函数97
7.3.2递归函数98
7.4变量作用域99
7.4.1局部变量99
7.4.2全局变量100
7.5模块101
7.5.1命名空间101
7.5.2模块定义与导入101
7.6习题103
第8章面向对象程序设计基础104
8.1面向对象概述104
8.1.1基本概念104
8.1.2与面向过程不同105
8.1.3面向对象三大特性105
8.2类和对象107
8.3类属性与实例属性107
8.3.1实例属性107
8.3.2类属性108
8.4方法109
8.4.1对象方法110
8.4.2类方法111
8.4.3静态方法111
8.5构造函数与析构函数111
8.5.1构造函数112
8.5.2析构函数112
8.6继承性113
8.7多态性116
8.7.1方法重载116
8.7.2运算符重载116
8.8习题117
第9章文件118
9.1文件概念118
9.1.1字符编码118
9.1.2文件分类119
9.2文件打开和关闭119
9.3文件操作121
9.3.1写操作121
9.3.2读操作121
9.3.3文件指针122
9.4存储器123
9.5与文件相关的模块124
9.5.1os模块124
9.5.2os.path模块124
9.5.3shutil模块125
9.6习题126
第10章用户界面设计127
10.1概述127
10.1.1界面设计原则127
10.1.2常用GUI工具127
10.2Tkinter编程128
10.2.1Tkinter简介128
10.2.2实例讲解129
10.3wxPython编程130
10.3.1wxPython简介130
10.3.2wxPython开发流程131
10.3.3Frame创建与使用131
10.4控件133
10.4.1静态文本133
10.4.2输入文本134
10.4.3命令按钮135
10.4.4滑块、微调控制框136
10.4.5单选钮和复选框138
10.4.6列表框和组合框139
10.4.7菜单141
10.4.8工具栏和状态栏143
10.5对话框144
10.5.1警告对话框144
10.5.2单行文本对话框146
10.5.3列表选择对话框146
10.6习题147
第11章绘图148
11.1绘图概念148
11.1.1绘图简介148
11.1.2坐标系148
11.2海龟绘图149
11.2.1turtle绘图方法149
11.2.2实例讲解149
11.3Canvas绘图152
11.3.1Canvas绘图方法152
11.3.2实例讲解153
11.4Numpy与Matplotlib154
11.4.1Numpy简介154
11.4.2Matplotlib简介155
11.5习题156
第12章数据库应用157
12.1数据库概念157
12.1.1数据库管理系统157
12.1.2关系型数据库157
12.1.3结构化查询语言158
12.2Python数据库访问模块160
12.2.1通用数据库访问模块160
12.2.2专用数据库访问模块160
12.3Python操作数据库161
12.3.1连接对象和游标161
12.3.2操作数据库过程162
12.4Python与两个数据库162
12.4.1SQLite3162
12.4.2MySQL163
12.5习题164
第13章网络编程165
13.1网络基础知识165
13.2TCP/IP165
13.2.1TCP/IP四层模型166
13.2.2IP地址和端口号166
13.3Socket167
13.3.1TCP连接167
13.3.2UDP连接169
13.4电子邮件170
13.4.1SMTP发送邮件170
13.4.2POP3收取邮件171
13.5习题173
第14章异常处理174
14.1错误类型174
14.1.1语法错误174
14.1.2运行时错误174
14.1.3逻辑错误175
14.2捕获和处理异常175
14.2.1try/except/else语句175
14.2.2try/Finally语句177
14.3两个特殊语句178
14.3.1raise语句178
14.3.2with语句180
14.4调试180
14.4.1调试策略180
14.4.2IDLE调试器181
14.5习题182
参考文献183