搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
出版时间 :
Python编程入门与实战 第3版(异步图书出品)
0.00     定价 ¥ 129.80
浙江图书馆
  • ISBN:
    9787115607386
  • 作      者:
    [意]法布里奇奥·罗马诺(Fabrizio,Romano),等
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2023-08-01
收藏
编辑推荐

1.完整丰富的Python编程教程,不仅介绍编程语言本身,还涉及场景实战、错误排查、程序发布等众多实用内容。

2.程序员实用的编程手册。针对多个应用场景给出解决方案,帮助读者有效避免犯错,提高工作效率。

3.内容循序渐进,深入浅出。从Python的基础知识开始,介绍了数据类型、函数、条件、循环等基本概念,展示了生成器、面向对象编程等具有Python特色的进阶理念,并给出了定位和排除异常、测试代码、调试的方法。

4.提供配套代码,易学易用。


展开
目录

第 1章  Python概述 1

1.1  编程预备知识 2

1.2  走近Python 3

1.3  关于Python 4

可移植性 4

一致性 4

开发人员的效率 4

广泛的程序库 5

软件质量 5

软件集成 5

满足感和乐趣 5

1.4  Python有什么缺点吗? 5

1.5  当前的Python用户 6

1.6  安装环境 6

1.6.1  Python 2和Python 3 6

1.7  安装Python 7

1.7.1  安装Python解释器 7

1.7.2  关于虚拟环境 9

1.7.3  第 一个虚拟环境 10

1.7.4  安装第三方程序库 12

1.7.5  控制台是我们的好帮手 13

1.8  怎样运行Python程序 13

1.8.1  运行Python脚本 13

1.8.2  在交互式shell中运行Python 14

1.8.3  以服务的形式运行Python 15

1.8.4  以GUI应用程序的形式运行Python 15

1.9  Python代码的组织形式 16

1.9.1  使用模块和程序包 17

1.10  Python的执行模型 18

1.10.1  名称和名字空间 19

1.10.2  作用域 20

1.10.3  对象和类 23

1.11  编写优质代码的指导原则 25

1.12  Python的文化 26

1.13  关于IDE的说明 27

1.14  总结 28

第 2章  内置的数据类型 29

2.1  一切皆是对象 29

2.2  可变还是不可变?这个是

问题 30

2.3  数值 32

2.3.1  整数 32

2.3.2  布尔值 34

2.3.3  实数 35

2.3.4 复数 36

2.3.5 分数和小数 36

2.4  不可变序列 37

2.4.1  字符串和bytes(字节) 37

2.4.2  元组 41

2.5  可变序列 42

2.5.1  列表 42

2.5.2  bytearray(字节数组) 45

2.6  集合类型 46

2.7  映射类型—字典 48

2.8  数据类型 51

2.8.1  日期和时间 52

2.8.2  collections模块 56

2.9  枚举 60

2.10  最后的考虑 60

2.10.1  小值缓存 61

2.10.2  如何选择数据结构 61

2.10.3  关于索引和截取 62

2.10.4  关于名称 63

2.11  总结 64

第3章  迭代和决策 65

3.1  条件编程 65

3.1.1  一种特殊的else:elif 66

3.1.2  三元操作符 68

3.2  循环 69

3.2.1  for循环 69

3.2.2  迭代器和可迭代对象 71

3.2.3  对多个序列进行迭代 72

3.2.4  while循环 74

3.2.5  break和continue语句 76

3.2.6  一种特殊的else子句 77

3.3  赋值表达式 79

3.3.1  语句和表达式 79

3.3.2  使用海象操作符 80

3.3.3  告诫 81

3.4  综合应用 81

3.4.1  质数生成器 81

3.4.2  应用折扣 83

3.5  itertools模块速览 86

3.5.1  无限迭代器 86

3.5.2  终止于最短输入序列的

迭代器 86

3.5.3  组合迭代器 87

3.6  总结 88

第4章  函数,代码的基本构件 89

4.1  为什么要使用函数? 90

4.1.1  减少代码的重复 90

4.1.2  分割复杂任务 91

4.1.3  隐藏实现细节 91

4.1.4  提高可读性 92

4.1.5  提高可追踪性 92

4.2  作用域和名称解析 93

4.2.1  global和nonlocal语句 95

4.3  输入参数 96

4.3.1  实际参数的传递 97

4.3.2  形式参数名称的赋值 97

4.3.3  修改可变对象 98

4.3.4  传递实际参数 99

4.3.5  定义形式参数 101

4.4  返回值 109

4.4.1  返回多个值 110

4.5  一些实用的提示 111

4.6  递归函数 112

4.7  匿名函数 113

4.8  函数的属性 114

4.9  内置函数 115

4.10  代码的文档和注释 115

4.11  导入对象 116

4.11.1  相对导入 117

4.12  最后一个例子 118

4.13  总结 119

第5章  解析和生成器 120

5.1  map、zip、filter函数 121

5.1.1  map 121

5.1.2  zip 124

5.1.3  filter 125

5.2  解析 125

5.2.1  嵌套的解析 126

5.2.2  对解析进行过滤 127

5.2.3  字典解析 129

5.2.4  集合解析 130

5.3  生成器 130

5.3.1  生成器函数 130

5.3.2  next的幕后 133

5.3.3  yield from表达式 135

5.3.4  生成器表达式 136

5.4  性能上的考虑 138

5.5  不要过度使用解析和生成器 141

5.6  名称局部化 143

5.7  内置的生成行为 144

5.8  最后一个例子 145

5.9  总结 146

第6章  面向对象编程、装饰器和

        迭代器 148

6.1  装饰器 148

6.1.1  装饰器工厂 153

6.2  面向对象编程(OOP) 155

6.2.1  最简单的Python类 155

6.2.2  类和对象的名字空间 156

6.2.3  属性屏蔽 157

6.2.4  使用self变量 158

6.2.5  实例的初始化 159

6.2.6  OOP与代码复用有关 159

6.2.7  访问基类 164

6.2.8  多重继承 165

6.2.9  类方法和静态方法 169

6.2.10  私有方法和名称改写 173

6.2.11  property装饰器 175

6.2.12  cached_property装饰器 176

6.2.13  操作符重载 178

6.2.14  多态——简单说明 178

6.2.15  数据类 179

6.3  编写自定义的迭代器 180

6.4  总结 181

第7章  异常和上下文管理器 182

7.1  异常 182

7.1.1  触发异常 184

7.1.2  自定义异常类 184

7.1.3  回溯 184

7.1.4  处理异常 185

7.1.5  不仅仅用于错误 188

7.2  上下文管理器 189

7.2.1  基于类的上下文管理器 191

7.2.2  基于生成器的上下文

管理器 192

7.3  总结 194

第8章  文件和数据持久化 195

8.1  操作文件和目录 195

8.1.1  打开文件 196

8.1.2  读取和写入文件 197

8.1.3  检查文件和目录是否存在 199

8.1.4  对文件和目录进行操作 200

8.1.5  临时文件和临时目录 202

8.1.6  目录的内容 203

8.1.7  文件和目录的压缩 204

8.2  数据交换格式 204

8.2.1  使用JSON 205

8.3  I/O、流和请求 211

8.3.2  创建HTTP请求 212

8.4  对磁盘上的数据进行持久化 214

8.4.1  使用pickle对数据进行

序列化 214

8.4.2  使用shelve保存数据 216

8.4.3  把数据保存到数据库 217

8.5  总结 222

第9章  加密与令牌 223

9.1  加密的需要 223

9.1.1  加密的实用指导原则 224

9.2  Hashlib模块 224

9.3  HMAC模块 226

9.4  secrets模块 227

9.4.1  随机数 227

9.4.2  令牌的生成 228

9.4.3 摘要的比较 229

9.5  JSON Web令牌 230

9.5.1  已注册的诉求 232

9.5.2  使用非对称(公钥)算法 235

9.6  参考阅读 235

9.7  总结 236

第 10章  测试 237

10.1  对应用程序进行测试 237

10.1.1  测试结构详解 239

10.1.2  测试的指导原则 240

10.1.3  单元测试 241

10.1.4  测试一个CSV生成器 243

10.2  测试驱动的开发 255

10.3  总结 257

第 11章  调试和性能分析 258

11.1  调试技巧 259

11.1.1  用print进行调试 259

11.1.2  用自定义函数进行调试 259

11.1.3  使用Python调试器 261

11.1.4  检查日志 263

11.1.5  其他方法 266

11.2  故障排除指南 267

11.2.1  在哪里检查 267

11.2.2  使用测试进行调试 268

11.2.4  监视 268

11.3  对Python进行性能分析 268

11.3.1  什么时候进行性能分析? 271

11.3.2  测量执行时间 271

11.4  总结 272

第 12章  GUI和脚本 273

12.1  第 一种方法:脚本 275

12.1.1  导入部分 275

12.1.2  解析参数 276

12.1.3  业务逻辑 278

12.2  第二种方法:GUI应用

  程序 281

12.2.1  导入部分 282

12.2.2  布局逻辑 283

12.2.3  业务逻辑 286

12.2.4  如何改进这个应用程序? 291

12.3  下一步的方向 292

12.3.1  turtle模块 292

12.3.2  wxPython、PyQt和

  PyGTK 292

12.3.3  最小惊讶原则 293

12.3.4  线程方面的考虑 293

12.4  总结 293

第 13章  数据科学简介 295

13.1  IPython和Jupyter Notebook 296

13.1.1  使用Anaconda 297

13.1.2  启动Notebook 298

13.2  处理数据 298

13.2.1  设置Notebook 299

13.2.2  准备数据 299

12.2.3  清理数据 303

13.2.4  创建DataFrame 304

13.2.5  把DataFrame保存到文件 311

13.2.6  显示结果 311

13.3  下一步的方向 316

13.4  总结 317

第 14章  API开发 318

14.1  什么是Web? 318

14.1.1  Web的工作方式 319

14.1.2  响应状态码 320

14.2  类型提示:概述 320

14.2.1  类型提示的优点 321

14.2.2  类型提示的精华 322

14.3  API简介 324

14.3.1  什么是API 324

14.3.2  API的用途 324

14.3.3  API协议 325

14.3.4  API数据交换格式 325

14.4  铁路API 326

14.4.1  对数据库进行建模 327

14.4.2  主要的设置和配置 332

14.4.3  车站端点 333

14.4.4  用户认证 345

14.4.5  创建API文档 347

14.5  消费API 348

14.6  未来的方向 353

14.7  总结 354

第 15章  打包Python应用程序 355

15.1  Python包索引 355

15.2  列车调度项目 357

15.3  用setuptools进行打包 361

15.3.1  必要的文件 361

15.3.2  程序包的元数据 364

15.3.3  定义程序包的内容 369

15.3.4  指定依赖关系 371

15.3.5  入口 373

15.4  生成和发布程序包 374

15.4.1  生成 374

15.4.2  发布 375

15.5  启动新项目的建议 377

15.6  其他工具 377

15.7  进一步的学习方向 378

15.8  总结 378


展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

温馨提示:请使用浙江图书馆的读者帐号和密码进行登录

点击获取验证码
登录