-
内容大纲
本书共9章。第1~5章介绍Python语言编程的基础内容,包括基本数据类型、复合数据类型、流程控制、函数和模块等内容,使读者初步了解Python语言,这部分适合零基础的读者;第6~8章介绍文件操作和异常处理、面向对象程序设计、多进程和多线程等内容,使读者进阶到Python程序设计中的异常处理、面向对象编程模式以及Python程序的高效性,这部分适合具备一定基础的读者;在第2~8章的各章中均单独设置一节介绍Python安全专题,并在第9章针对网络安全领域中的具体场景,以项目操作实战的方式介绍Python在密码学、计算机取证、异常检测以及渗透测试等方面的应用,使读者具备安全编程防御的能力,这部分适合关注Python安全应用的读者。
本书适合高等学校网络空间安全专业、信息安全专业和密码学专业的学生使用,也适合对Python语言编程感兴趣的读者使用,还可作为从事计算机安全管理、渗透测试和计算机取证的工程技术人员的参考用书。 -
作者介绍
-
目录
第1章 概述
1.1 Python语言简介
1.1.1 Python语言的发展历史
1.1.2 Python语言的特点
1.1.3 Python语言的应用领域
1.2 Python开发环境的安装和使用
1.2.1 IDLE
1.2.2 PyCharm
1.2.3 Anaconda
1.2.4 Jupyter Notebook
1.3 支持库的管理
1.4 如何学好编程
习题
第2章 基本数据类型
2.1 变量
2.1.1 变量的定义
2.1.2 变量的命名规则
2.1.3 查看关键字和内置函数
2.1.4 常量
2.2 数字类型
2.2.1 整数、浮点数和复数
2.2.2 进制之间的转换
2.2.3 内置模块
2.3 字符串
2.3.1 字符串的表示
2.3.2 字符串的常用操作
2.4 基本的输入和输出
2.4.1 输入函数
2.4.2 输出函数
2.5 代码规范
2.6 字符编码
2.7 综合实例: 芳名和芳龄
2.8 turtle库
2.9 安全专题
2.9.1 消息摘要模块hashlib
2.9.2 消息认证模块hmac
习题
第3章 复合数据类型
3.1 序列数据
3.1.1 序列简介
3.1.2 创建列表和元组
3.2 列表和元组通用的方法
3.2.1 通过索引访问元素
3.2.2 slice切片
3.2.3 查找与计数
3.2.4 最大值、最小值和长度
3.2.5 加法、乘法和成员运算
3.2.6 序列封包和序列解包
3.3 列表
3.3.1 创建列表
3.3.2 增加元素
3.3.3 删除元素
3.3.4 逆序和排序
3.3.5 弹出元素
3.3.6 浅拷贝和深拷贝
3.4 元组
3.4.1 创建元组
3.4.2 列表和元组之间的转换
3.5 字典
3.5.1 创建字典
3.5.2 访问元素
3.5.3 增加、修改元素
3.5.4 删除元素
3.5.5 get()方法和items()方法
3.5.6 keys()方法和values()方法
3.5.7 字典长度和字典检索
3.5.8 update()方法
3.6 其他数据结构
3.6.1 双端队列
3.6.2 堆(优先队列)
3.7 安全专题
3.7.1 命令行参数解析模块argparse
3.7.2 图片元数据解析模块exifread
3.7.3 PDF文件元数据解析模块PyPDF3
习题
第4章 流程控制
4.1 分支结构
4.1.1 三种分支结构
4.1.2 if语句需要注意的问题
4.2 循环结构
4.2.1 while循环
4.2.2 for in循环
4.2.3 综合实例: 统计数字出现的次数
4.2.4 break和continue语句
4.2.5 while else和for else语句
4.3 列表生成式
4.4 生成器
4.5 迭代器
4.6 安全专题
4.6.1 破解MD5
4.6.2 凯撒密码
4.6.3 仿射密码
习题
第5章 函数和模块
5.1 函数的定义和调用
5.1.1 函数的定义方式
5.1.2 函数说明文档
5.1.3 返回值
5.1.4 函数的嵌套
5.1.5 函数执行的起点
5.2 函数的参数
5.2.1 位置参数
5.2.2 默认值参数
5.2.3 可变参数
5.2.4 关键字参数
5.2.5 命名关键字
5.2.6 综合实例
5.2.7 函数参数传递机制
5.3 lambda表达式
5.4 变量的作用域和命名空间
5.5 函数高级特性
5.5.1 生成器函数
5.5.2 高阶函数
5.5.3 偏函数
5.5.4 修饰器(装饰器)
5.6 模块化编程
5.6.1 内置模块
5.6.2 安装第三方模块
5.6.3 自定义模块
5.6.4 模块导入顺序
5.7 PyInstaller打包
5.8 安全专题
5.8.1 摘要算法的雪崩效应
5.8.2 AES算法的雪崩效应
习题
第6章 文件操作和异常处理
6.1 读、写文本文件
6.1.1 读取文本文件
6.1.2 写入文本文件
6.1.3 读、写二进制文件
6.2 举例
6.2.1 统计字母出现的次数
6.2.2 拓展
6.3 jieba和wordcloud库
6.3.1 jieba库
6.3.2 wordcloud库
6.3.32 023年政府工作报告词云
6.4 读写CSV文件
6.4.1 CSV模块
6.4.2 举例
6.5 读写JSON文件
6.5.1 序列化
6.5.2 JSON模块
6.6 文件目录相关操作
6.6.1 os模块以及os.path
6.6.2 目录遍历的三种方式
6.7 异常处理
6.7.1 Python中的异常类
6.7.2 捕获和处理异常
6.7.3 raise语句
6.7.4 排查异常和记录异常
6.8 综合实例: 网络爬虫
6.8.1 爬取热榜榜单
6.8.2 爬取多个榜单
6.9 安全专题
6.9.1 简易病毒扫描
6.9.2 大文件的摘要计算
习题
第7章 面向对象程序设计
7.1 类和对象
7.1.1 定义类和创建对象
7.1.2 访问可见性
7.1.3 类属性和实例属性
7.2 方法
7.2.1 构造方法和析构方法
7.2.2 类方法和静态方法
7.2.3 @property装饰器
7.3 继承和多态
7.3.1 继承
7.3.2 MixIn
7.3.3 多态
7.4 动态属性和slots
7.5 定制类和重载运算符
7.5.1 定制类
7.5.2 重载运算符
7.6 综合实例: 网络爬虫类
7.7 安全专题
7.7.1 AES算法流程
7.7.2 AES算法实现
7.7.3 AES加、解密类
习题
第8章 多进程和多线程
8.1 多进程
8.1.1 multiprocessing模块的Process类
8.1.2 进程池
8.1.3 ProcessPoolExecutor并发编程
8.1.4 进程间的通信
8.2 多线程
8.2.1 threading模块
8.2.2 互斥锁Lock
8.2.3 死锁
8.3 线程通信
8.3.1 使用Condition实现线程通信
8.3.2 使用queue实现线程通信
8.3.3 使用Event实现线程通信
8.4 ThreadLocal Data
8.5 ThreadPoolExecutor并发编程
8.6 综合实例: 多线程爬虫
8.7 安全专题
8.7.1 暴力破解子域名
8.7.2 多文件的哈希计算
8.7.3 多进程生成哈希表
习题
第9章 网络安全应用综合实践
9.1 密码学综合应用: 文件安全传输
9.1.1 实例具体要求
9.1.2 第三方库介绍
9.1.3 具体编程实现
9.1.4 运行测试
9.2 计算机取证: 元数据证据提取
9.2.1 实例具体要求
9.2.2 第三方库介绍
9.2.3 具体编程实现
9.2.4 运行测试
9.3 异常检测: 基于机器学习的异常检测
9.3.1 实例具体要求
9.3.2 第三方库介绍
9.3.3 具体编程实现
9.3.4 运行测试
9.4 渗透测试: 基本的Web渗透实践
9.4.1 实例具体要求
9.4.2 环境配置
9.4.3 相关工具和第三方库
9.4.4 渗透步骤
习题
参考文献
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...