计算机
类型
可以朗读
语音朗读
224千字
字数
2019-01-01
发行日期
展开全部
主编推荐语
本书分三篇教授Python基础、四大网络框架、实战分析,适应Python3.X版本。
内容简介
本书分3篇共13章,第一篇基础篇,主要介绍Python的基本语法、网络基础知识、数据库基础知识。第二篇为框架篇,Python网络编程主要通过几个开源框架实现,本篇带领读者学习当前最主流的四种Python网络框架,分别是长于企业级开发的Django框架、长于高并发处理的Tornado框架、长于快速建站的Flask框架、长于底层自定义协议网络开发Twisted.第三篇为实战篇,通过带领读者分析四个开源项目(分别用第二编中学习到的四个框架开发)来达到实践的目的。更新说明:当前已经是Python3.X的天下,2.X好多项目已经不再支持,本书的四大框架也进行了版本上的更新,代码需要重新移植。
目录
- 封面
- 书名页
- 内容简介
- 版权页
- 前 言
- 目录
- 上篇 Python基础
- 第1章 Python基础知识
- 1.1 Python综述
- 1.1.1 了解Python的特性及版本
- 1.1.2 安装Python
- 1.1.3 使用Python原生编辑器
- 1.1.4 使用Eclipse开发环境
- 1.1.5 Python编程入门——解决“斐波那契数列”问题
- 1.2 数据类型
- 1.2.1 Number类型
- 1.2.2 Sequence类型簇
- 1.2.3 string与bytes
- 1.2.4 tuple类型
- 1.2.5 list类型
- 1.2.6 set类型
- 1.2.7 dict类型
- 1.3 流程控制
- 1.3.1 程序块与作用域
- 1.3.2 判断语句
- 1.3.3 循环语句
- 1.3.4 语句嵌套
- 1.4 函数
- 1.4.1 定义与使用
- 1.4.2 变长参数
- 1.4.3 匿名函数
- 1.5 异常
- 1.5.1 处理异常
- 1.5.2 自定义异常
- 1.6 面向对象编程
- 1.6.1 什么是面向对象
- 1.6.2 类和对象
- 1.6.3 继承
- 1.7 本章总结
- 第2章 Web编程之网络基础
- 2.1 TCP/IP网络
- 2.1.1 计算机网络综述
- 2.1.2 TCP和UDP
- 2.1.3 C/S及B/S架构
- 2.2 HTTP
- 2.2.1 HTTP流程
- 2.2.2 HTTP消息结构
- 2.2.3 HTTP请求方法
- 2.2.4 基于HTTP的网站开发
- 2.3 Socket编程
- 2.3.1 Socket基础
- 2.3.2 实战演练:Socket TCP原语
- 2.3.3 实战演练:Socket UDP原语
- 2.4 本章总结
- 第3章 客户端的编程技术
- 3.1 HTML
- 3.1.1 HTML介绍
- 3.1.2 HTML基本标签
- 3.1.3 HTML表单
- 3.2 CSS
- 3.2.1 样式声明方式
- 3.2.2 CSS语法
- 3.2.3 基于CSS+DIV的页面布局
- 3.3 JavaScript
- 3.3.1 在HTML中嵌入JavaScript
- 3.3.2 JavaScript的基本语法
- 3.3.3 DOM及其读写
- 3.3.4 window对象
- 3.3.5 HTML事件处理
- 3.4 jQuery
- 3.4.1 使用jQuery
- 3.4.2 选择器
- 3.4.3 行为
- 3.5 本章总结
- 第4章 数据库及ORM
- 4.1 数据库概念
- 4.1.1 Web开发中的数据库
- 4.1.2 关系数据库建模
- 4.2 关系数据库编程
- 4.2.1 常用SQL语句
- 4.2.2 实战演练:在Python中应用SQL
- 4.3 ORM编程
- 4.3.1 ORM理论基础
- 4.3.2 Python ORM库介绍
- 4.3.3 实战演练:Peewee库编程
- 4.4 本章总结
- 中篇 Python框架
- 第5章 Python网络框架纵览
- 5.1 网络框架综述
- 5.1.1 网络框架及MVC架构
- 5.1.2 4种Python网络框架:Django、Tornado、Flask、Twisted
- 5.2 开发环境准备
- 5.2.1 easy_install与pip的使用
- 5.2.2 使用Python虚环境virtualenv
- 5.3 Web服务器
- 5.3.1 实战演练1:WSGI接口
- 5.3.2 实战演练2:Linux+Nginx+uWSGI配置
- 5.3.3 实战演练3:建立安全的HTTPS网站
- 5.4 本章总结
- 第6章 企业级开发框架——Django
- 6.1 Django综述
- 6.1.1 Django的特点及结构
- 6.1.2 安装Django 2
- 6.2 实战演练:开发Django站点
- 6.2.1 建立项目
- 6.2.2 建立应用
- 6.2.3 基本视图
- 6.2.4 内置Web服务器
- 6.2.5 模型类
- 6.2.6 表单视图
- 6.2.7 使用管理界面
- 6.3 Django模型层
- 6.3.1 基本操作
- 6.3.2 关系操作
- 6.3.3 面向对象ORM
- 6.4 Django视图层
- 6.4.1 URL映射
- 6.4.2 视图函数
- 6.4.3 模板语法
- 6.5 使用Django表单
- 6.5.1 表单绑定状态
- 6.5.2 表单数据验证
- 6.5.3 检查变更字段
- 6.6 个性化管理员站点
- 6.6.1 模型
- 6.6.2 模板
- 6.6.3 站点
- 6.7 本章总结
- 第7章 高并发处理框架——Tornado
- 7.1 Tornado概述
- 7.1.1 Tornado介绍
- 7.1.2 安装Tornado
- 7.2 异步及协程基础
- 7.2.1 同步与异步I/O
- 7.2.2 可迭代(Iterable)与迭代器(Iterator)
- 7.2.3 用yield定义生成器(Generator)
- 7.2.4 协程
- 7.3 实战演练:开发Tornado网站
- 7.3.1 网站结构
- 7.3.2 路由解析
- 7.3.3 RequestHandler
- 7.3.4 异步化及协程化
- 7.4 用户身份验证框架
- 7.4.1 安全Cookie机制
- 7.4.2 用户身份认证
- 7.4.3 防止跨站攻击
- 7.5 HTML 5 WebSocket概念及应用
- 7.5.1 WebSocket概念
- 7.5.2 服务端编程
- 7.5.3 客户端编程
- 7.6 Tornado网站部署
- 7.6.1 调试模式
- 7.6.2 静态文件
- 7.6.3 运营期配置
- 7.7 本章总结
- 第8章 支持快速建站的框架——Flask
- 8.1 Flask综述
- 8.1.1 Flask的特点
- 8.1.2 安装Flask、SQLAlchemy和WTForm
- 8.2 实战演练:开发Flask站点
- 8.2.1 Hello World程序
- 8.2.2 模板渲染
- 8.2.3 重定向和错误处理
- 8.3 路由详解
- 8.3.1 带变量的路由
- 8.3.2 HTTP方法绑定
- 8.3.3 路由地址反向生成
- 8.4 使用Context上下文
- 8.4.1 会话上下文
- 8.4.2 应用全局对象
- 8.4.3 请求上下文
- 8.4.4 回调接入点
- 8.5 Jinja2模板编程
- 8.5.1 Jinja2语法
- 8.5.2 使用过滤器
- 8.5.3 流程控制
- 8.5.4 模板继承
- 8.6 SQLAlchemy数据库编程
- 8.6.1 SQLAlchemy入门
- 8.6.2 主流数据库的连接方式
- 8.6.3 查询条件设置
- 8.6.4 关系操作
- 8.6.5 级联
- 8.7 WTForm表单编程
- 8.7.1 定义表单
- 8.7.2 显示表单
- 8.7.3 获取表单数据
- 8.8 本章总结
- 第9章 底层自定义协议网络框架——Twisted
- 9.1 Twisted综述
- 9.1.1 框架概况
- 9.1.2 安装Twisted及周边组件
- 9.2 实战演练:开发TCP广播系统
- 9.2.1 广播服务器
- 9.2.2 广播客户端
- 9.3 UDP编程技术
- 9.3.1 实战演练1:普通UDP
- 9.3.2 实战演练2:Connected UDP
- 9.3.3 实战演练3:组播技术
- 9.4 Twisted高级话题
- 9.4.1 延迟调用
- 9.4.2 使用多线程
- 9.4.3 安全信道
- 9.5 本章总结
- 下篇 Python框架实战
- 第10章 实战1:用Django+PostgreSQL开发移动Twitter
- 10.1 项目概览
- 10.1.1 项目来源(GitHub)
- 10.1.2 安装PostgreSQL数据库并配置Python环境
- 10.1.3 项目结构
- 10.2 页面框架设计
- 10.2.1 基模板文件
- 10.2.2 手机大小自适应(jQuery技术)
- 10.2.3 文本国际化
- 10.2.4 网站页面一览
- 10.3 用户注册及登录
- 10.3.1 页面设计
- 10.3.2 模型层
- 10.3.3 视图设计
- 10.4 手机消息的发布和浏览
- 10.4.1 页面设计
- 10.4.2 模型层
- 10.4.3 视图设计
- 10.5 社交朋友圈
- 10.5.1 页面设计
- 10.5.2 模型层
- 10.5.3 视图设计
- 10.6 个人资料配置
- 10.6.1 页面设计
- 10.6.2 图片上传(第三方库PIL)
- 10.7 Web管理站点
- 10.7.1 定义可管理对象
- 10.7.2 配置管理员
- 10.7.3 使用管理站点
- 10.8 本章总结
- 第11章 实战2:用Tornado+jQuery开发WebSocket聊天室
- 11.1 聊天室概览
- 11.1.1 项目介绍
- 11.1.2 安装和代码结构
- 11.2 消息通信
- 11.2.1 建立网站
- 11.2.2 WebSocket服务器
- 11.2.3 WebSocket客户端
- 11.3 聊天功能
- 11.3.1 昵称
- 11.3.2 消息来源
- 11.3.3 历史消息缓存
- 11.4 用户面板
- 11.4.1 用CSS定义用户列表
- 11.4.2 服务器通知
- 11.4.3 响应服务器动态通知(jQuery动态编程)
- 11.5 本章总结
- 第12章 实战3:用Flask+Bootstrap+Restful开发学校管理系统
- 12.1 系统概览
- 12.1.1 项目来源及功能
- 12.1.2 项目安装
- 12.1.3 代码结构
- 12.2 数据模型设计
- 12.2.1 E-R图设计
- 12.2.2 SQLAlchemy建模
- 12.3 响应式页面框架设计
- 12.3.1 基模板组件引用
- 12.3.2 响应式导航
- 12.4 新建学校
- 12.4.1 WTForm表单
- 12.4.2 视图及文件上传
- 12.4.3 响应式布局
- 12.5 学校管理
- 12.5.1 查询视图
- 12.5.2 分页模板
- 12.6 Restful接口
- 12.6.1 Restful概念
- 12.6.2 Restless插件
- 12.6.3 开发Restful接口
- 12.7 本章总结
- 第13章 实战4:用Twisted+SQLAlchemy+ZeroMQ开发跨平台物联网消息网关
- 13.1 项目概况
- 13.1.1 功能定义
- 13.1.2 安装和测试
- 13.1.3 项目结构
- 13.2 项目设计
- 13.2.1 SQLAlchmey建模
- 13.2.2 TCP接口设计
- 13.3 通信引擎
- 13.3.1 跨平台安全端口
- 13.3.2 管理连接
- 13.3.3 收发数据
- 13.3.4 TCP流式分包
- 13.3.5 异步执行
- 13.4 协议编程
- 13.4.1 执行命令
- 13.4.2 struct解析字节流
- 13.4.3 序列号生成
- 13.4.4 连接保持
- 13.4.5 发送Response
- 13.4.6 错误机制
- 13.5 ZeroMQ集群
- 13.5.1 内部接口设计
- 13.5.2 PUB/SUB通信模型编程
- 13.6 本章总结
- 封底
展开全部
出版方
电子工业出版社
电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。