Python语言及其应用

Python语言及其应用

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

本书适合所有编程初学者阅读。

内容简介

本书介绍Python 语言的基础知识及其在各个领域的具体应用,基于新版本3.x。书中首先介绍了Python 语言的一些基本知识,然后介绍了在商业、科研以及艺术领域使用Python 开发各种应用的实例。文字简洁明了,案例丰富实用,是一本难得的Python 入门手册。

本书适合所有编程初学者阅读。

作者简介

作者Bill Lubanovic,现为Penguin Computing公司高级软件工程师。1977年开始开发Unix软件,1981年开始开发GUI软件,1990年开始开发数据库软件,1993年开始开发Web软件。与人合著有Linux System Administration。

章节目录

版权信息

版权声明

O'Reilly Media, Inc. 介绍

业界评论

前言

目标读者

本书结构

Python版本

排版约定

使用代码示例

Safari® Books Online

联系我们

致谢

第1章 Python 初探

1.1 真实世界中的Python

1.2 Python与其他语言

1.3 为什么选择Python

1.4 何时不应该使用Python

1.5 Python 2与Python 3

1.6 安装Python

1.7 运行Python

1.7.1 使用交互式解释器

1.7.2 使用Python文件

1.7.3 下一步

1.8 禅定一刻

1.9 练习

第2章 Python 基本元素:数字、字符串和变量

2.1 变量、名字和对象

2.2 数字

2.2.1 整数

2.2.2 优先级

2.2.3 基数

2.2.4 类型转换

2.2.5 一个int型有多大

2.2.6 浮点数

2.2.7 数学函数

2.3 字符串

2.3.1 使用引号创建

2.3.2 使用str()进行类型转换

2.3.3 使用\转义

2.3.4 使用+拼接

2.3.5 使用*复制

2.3.6 使用[]提取字符

2.3.7 使用[start:end:step]分片

2.3.8 使用len()获得长度

2.3.9 使用split()分割

2.3.10 使用join()合并

2.3.11 熟悉字符串

2.3.12 大小写与对齐方式

2.3.13 使用replace()替换

2.3.14 更多关于字符串的内容

2.4 练习

第3章 Python 容器:列表、元组、字典与集合

3.1 列表和元组

3.2 列表

3.2.1 使用[]或list()创建列表

3.2.2 使用list()将其他数据类型转换成列表

3.2.3 使用[offset]获取元素

3.2.4 包含列表的列表

3.2.5 使用[offset]修改元素

3.2.6 指定范围并使用切片提取元素

3.2.7 使用append()添加元素至尾部

3.2.8 使用extend()或+=合并列表

3.2.9 使用insert()在指定位置插入元素

3.2.10 使用del删除指定位置的元素

3.2.11 使用remove()删除具有指定值的元素

3.2.12 使用pop()获取并删除指定位置的元素

3.2.13 使用index()查询具有特定值的元素位置

3.2.14 使用in判断值是否存在

3.2.15 使用count()记录特定值出现的次数

3.2.16 使用join()转换为字符串

3.2.17 使用sort()重新排列元素

3.2.18 使用len()获取长度

3.2.19 使用=赋值,使用copy()复制

3.3 元组

3.3.1 使用()创建元组

3.3.2 元组与列表

3.4 字典

3.4.1 使用{}创建字典

3.4.2 使用dict()转换为字典

3.4.3 使用[key]添加或修改元素

3.4.4 使用update()合并字典

3.4.5 使用del删除具有指定键的元素

3.4.6 使用clear()删除所有元素

3.4.7 使用in判断是否存在

3.4.8 使用[key]获取元素

3.4.9 使用keys()获取所有键

3.4.10 使用values()获取所有值

3.4.11 使用items()获取所有键值对

3.4.12 使用=赋值,使用copy()复制

3.5 集合

3.5.1 使用set()创建集合

3.5.2 使用set()将其他类型转换为集合

3.5.3 使用in测试值是否存在

3.5.4 合并及运算符

3.6 比较几种数据结构

3.7 建立大型数据结构

3.8 练习

第4章 Python 外壳:代码结构

4.1 使用#注释

4.2 使用\连接

4.3 使用if、elif和else进行比较

什么是真值(True)

4.4 使用while进行循环

4.4.1 使用break跳出循环

4.4.2 使用continue跳到循环开始

4.4.3 循环外使用else

4.5 使用for迭代

4.5.1 使用break跳出循环

4.5.2 使用continue跳到循环开始

4.5.3 循环外使用else

4.5.4 使用zip()并行迭代

4.5.5 使用range()生成自然数序列

4.5.6 其他迭代方式

4.6 推导式

4.6.1 列表推导式

4.6.2 字典推导式

4.6.3 集合推导式

4.6.4 生成器推导式

4.7 函数

4.7.1 位置参数

4.7.2 关键字参数

4.7.3 指定默认参数值

4.7.4 使用*收集位置参数

4.7.5 使用**收集关键字参数

4.7.6 文档字符串

4.7.7 一等公民:函数

4.7.8 内部函数

4.7.9 闭包

4.7.10 匿名函数:lambda()函数

4.8 生成器

4.9 装饰器

4.10 命名空间和作用域

名称中_和 __ 的用法

4.11 使用try和except处理错误

4.12 编写自己的异常

4.13 练习

第5章 Python 盒子:模块、包和程序

5.1 独立的程序

5.2 命令行参数

5.3 模块和import语句

5.3.1 导入模块

5.3.2 使用别名导入模块

5.3.3 导入模块的一部分

5.3.4 模块搜索路径

5.4 包

5.5 Python标准库

5.5.1 使用setdefault()和defaultdict()处理缺失的键

5.5.2 使用Counter()计数

5.5.3 使用有序字典OrderedDict()按键排序

5.5.4 双端队列:栈+队列

5.5.5 使用itertools迭代代码结构

5.5.6 使用pprint()友好输出

5.6 获取更多Python代码

5.7 练习

第6章 对象和类

6.1 什么是对象

6.2 使用class定义类

6.3 继承

6.4 覆盖方法

6.5 添加新方法

6.6 使用super从父类得到帮助

6.7 self的自辩

6.8 使用属性对特性进行访问和设置

6.9 使用名称重整保护私有特性

6.10 方法的类型

6.11 鸭子类型

6.12 特殊方法

6.13 组合

6.14 何时使用类和对象而不是模块

命名元组

6.15 练习

第7章 像高手一样玩转数据

7.1 文本字符串

7.1.1 Unicode

7.1.2 格式化

7.1.3 使用正则表达式匹配

7.2 二进制数据

7.2.1 字节和字节数组

7.2.2 使用struct转换二进制数据

7.2.3 其他二进制数据工具

7.2.4 使用binascii()转换字节/字符串

7.2.5 位运算符

7.3 练习

第8章 数据的归宿

8.1 文件输入/输出

8.1.1 使用write()写文本文件

8.1.2 使用read()、readline()或者readlines()读文本文件

8.1.3 使用write()写二进制文件

8.1.4 使用read()读二进制文件

8.1.5 使用with自动关闭文件

8.1.6 使用seek()改变位置

8.2 结构化的文本文件

8.2.1 CSV

8.2.2 XML

8.2.3 HTML

8.2.4 JSON

8.2.5 YAML

8.2.6 安全提示

8.2.7 配置文件

8.2.8 其他交换格式

8.2.9 使用pickle序列化

8.3 结构化二进制文件

8.3.1 电子数据表

8.3.2 层次数据格式

8.4 关系型数据库

8.4.1 SQL

8.4.2 DB-API

8.4.3 SQLite

8.4.4 MySQL

8.4.5 PostgreSQL

8.4.6 SQLAlchemy

8.5 NoSQL数据存储

8.5.1 dbm family

8.5.2 memcached

8.5.3 Redis

8.5.4 其他的NoSQL

8.6 全文数据库

8.7 练习

第9章 剖析 Web

9.1 Web客户端

9.1.1 使用telnet进行测试

9.1.2 Python的标准Web库

9.1.3 抛开标准库:requests

9.2 Web服务端

9.2.1 最简单的Python Web服务器

9.2.2 Web服务器网关接口

9.2.3 框架

9.2.4 Bottle

9.2.5 Flask

9.2.6 非Python的Web服务器

9.2.7 其他框架

9.3 Web服务和自动化

9.3.1 webbrowser模块

9.3.2 Web API和表述性状态传递

9.3.3 JSON

9.3.4 抓取数据

9.3.5 用BeautifulSoup来抓取HTML

9.4 练习

第10章 系统

10.1 文件

10.1.1 用open()创建文件

10.1.2 用exists()检查文件是否存在

10.1.3 用isfile()检查是否为文件

10.1.4 用copy()复制文件

10.1.5 用rename()重命名文件

10.1.6 用link()或者symlink()创建链接

10.1.7 用chmod()修改权限

10.1.8 用chown()修改所有者

10.1.9 用abspath()获取路径名

10.1.10 用realpath()获取符号的路径名

10.1.11 用remove()删除文件

10.2 目录

10.2.1 使用mkdir()创建目录

10.2.2 使用rmdir()删除目录

10.2.3 使用listdir()列出目录内容

10.2.4 使用chdir()修改当前目录

10.2.5 使用glob()列出匹配文件

10.3 程序和进程

10.3.1 使用subprocess创建进程

10.3.2 使用multiprocessing创建进程

10.3.3 使用terminate()终止进程

10.4 日期和时间

10.4.1 datetime模块

10.4.2 使用time模块

10.4.3 读写日期和时间

10.4.4 其他模块

10.5 练习

第11章 并发和网络

11.1 并发

11.1.1 队列

11.1.2 进程

11.1.3 线程

11.1.4 绿色线程和gevent

11.1.5 twisted

11.1.6 asyncio

11.1.7 Redis

11.1.8 队列之上

11.2 网络

11.2.1 模式

11.2.2 发布-订阅模型

11.2.3 TCP/IP

11.2.4 套接字

11.2.5 ZeroMQ

11.2.6 scapy

11.2.7 网络服务

11.2.8 Web服务和API

11.2.9 远程处理

11.2.10 大数据和MapReduce

11.2.11 在云上工作

11.3 练习

第12章 成为真正的 Python 开发者

12.1 关于编程

12.2 寻找Python代码

12.3 安装包

12.3.1 使用pip

12.3.2 使用包管理工具

12.3.3 从源代码安装

12.4 集成开发环境

12.4.1 IDLE

12.4.2 PyCharm

12.4.3 IPython

12.5 命名和文档

12.6 测试代码

12.6.1 使用pylint、pyflakes和pep8检查代码

12.6.2 使用unittest进行测试

12.6.3 使用doctest进行测试

12.6.4 使用nose进行测试

12.6.5 其他测试框架

12.6.6 持续集成

12.7 调试Python代码

12.8 使用pdb进行调试

12.9 记录错误日志

12.10 优化代码

12.10.1 测量时间

12.10.2 算法和数据结构

12.10.3 Cython、NumPy和C扩展

12.10.4 PyPy

12.11 源码控制

12.11.1 Mercurial

12.11.2 Git

12.12 复制本书代码

12.13 更多内容

12.13.1 书

12.13.2 网站

12.13.3 社区

12.13.4 大会

12.14 后续内容

附录 A Python 的艺术

A.1 2D图形

A.1.1 标准库

A.1.1 PIL和Pillow

A.1.3 ImageMagick

A.2 图形用户界面

A.3 3D图形和动画

A.4 平面图、曲线图和可视化

A.4.1 matplotlib

A.4.2 bokeh

A.5 游戏

A.6 音频和音乐

附录 B 工作中的 Python

B.1 Microsoft Office套件

B.2 执行商业任务

B.3 处理商业数据

B.3.1 提取、转换、加载

B.3.2 额外信息源

B.4 金融中的Python

B.5 商业数据安全性

B.6 地图

B.6.1 格式

B.6.2 绘制地图

B.6.3 应用和数据

附录 C Python 的科学

C.1 标准库中的数学和统计

C.1.1 数学函数

C.1.2 使用复数

C.1.3 使用小数对浮点数进行精确计算

C.1.4 使用分数进行有理数运算

C.1.5 使用array创建压缩序列

C.1.6 使用statistics进行简单数据统计

C.1.7 矩阵乘法

C.2 科学Python

C.3 Numpy

C.3.1 使用array()创建数组

C.3.2 使用arange()创建数组

C.3.3 使用zeros()、ones()和random()创建数组

C.3.4 使用reshape()改变矩阵的形状

C.3.5 使用[]访问元素

C.3.6 数组运算

C.3.7 线性代数

C.4 SciPy库

C.5 SciKit库

C.6 IPython库

C.6.1 更好的解释器

C.6.2 IPython笔记本

C.7 Pandas

C.8 Python和科学领域

附录 D 安装 Python 3

D.1 安装标准Python

D.1.1 Mac OS X

D.1.2 Windows

D.1.3 Linux或Unix

D.2 安装Anaconda

D.3 安装并使用pip和virtualenv

D.4 安装并使用conda

附录 E 习题解答

E.1 第1章“Python初探”

E.2 第2章“Python基本元素:数字、字符串和变量”

E.3 第3章“Python容器:列表、元组、字典与集合”

E.4 第4章“Python外壳:代码结构”

E.5 第5章“Python盒子:模块、包和程序”

E.6 第6章“对象和类”

E.7 第7章“像高手一样玩转数据”

E.8 第8章“数据的归宿”

E.9 第9章“剖析Web”

E.10 第10章“系统”

E.11 第11章“并发和网络”

附录 F 速查表

F.1 操作符优先级

F.2 字符串方法

F.2.1 改变大小写

F.2.2 搜索

F.2.3 修改

F.2.4 格式化

F.2.5 字符串类型

F.3 字符串模块属性

作者介绍

封面介绍

看完了

Python语言及其应用是2015年由人民邮电出版社出版,作者[美]BillLubanovic。

得书感谢您对《Python语言及其应用》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Python算法详解 电子书
- 以“从入门到精通”的写作方法构建内容,让读者入门容易。 为了使读者能够完全看懂本书的内容,本书遵循“从入门到精通”基础类图书的写法,循序渐进地讲解算法的知识。 - 破解语言难点,以“技术解惑”贯穿全书,绕过学习中的陷阱。 为了帮助读者学懂算法,每章都会有“技术解惑”模块,让读者知其然又知其所以然。 - 书中包含大量典型实例。 书中有195个实例,通过这些实例的练习,读者有更多的实践演练机会。 - 通过QQ群和网站论坛实现教学互动,形成互帮互学的朋友圈。 本书作者为了方便给读者答疑,特地提供了网站论坛、QQ群等技术支持,并且随时在线与读者互动。让大家在互学互帮中形成一个良好的学习编程的氛围。网站名称和群号,详见本书前言部分。
嵌入式应用程序设计综合教程(微课版) 电子书
嵌入式应用设计实例解析:涵盖Linux开发环境、进程控制、多线程编程等核心概念。
第一行代码  C语言(视频讲解版) 电子书
学习程序设计,初学者往往遇到这样的困境:语言规则可以倒背如流,但写出的代码总是编译通不过,即使编译通过了却也得不出想要的结果。怎么办?《行代码 C语言》可以给你提供帮助。 你不需要具备高深的数学和电子学知识,只需要训练自己以计算机能够理解的方式去表达自己的逻辑,也就是要具备“计算思维”,寻找到解决问题的方法,然后用编程语言去指挥计算机执行即可。因此,本书与常规的C语言书不同,除了C语言本身的语法规则外,本书更关注的是培养初学者具有程序设计的思想,掌握程序设计的方法。 另外,计蒜客在线教育团队,为本书的读者提供了伴随式的在线编程平台支持,读者可以将图书和线上编程结合起来学习。 提供扫码看视频服务,全书94个微视频,总时长超过1000分钟。 提供辅助教学资源包,包括实验、试卷及答案、教学大纲、PPT等。
Python 3破冰人工智能:从入门到实战 电子书
数学基础:从历年数学建模竞赛入手,解读人工智能中的数学方法。 编程实践:100余个代码实例,全面讲解网络爬虫、数据存储与数据分析等内容。 算法应用:实战案例辅以丰富图解,详尽分析人工智能算法特性及其应用场景。
Python编程从入门到精通 电子书
带你由浅入深地详细了解Python语言开发技术。