《基于Python的DevOps》是由中国电力出版社出版的一本关于Python方面的书籍,作者是诺亚·吉夫特,主要介绍了关于Python、DevOps方面的知识内容,目前在Python类书籍综合评分为:8.7分。
书籍介绍
本书介绍使用Python来完成Linux系统的日常管理任务,以及使用当下火热的DevOps工具,包括Docker、Kubernetes和Terraform。
编辑推荐
在过去的十年里,技术发生了很大的变化。数据是热门话题,云无处不在,许多组织都需要某种形式的自动化。在这场变革中,Python发展成为世界上流行的语言之一。这本实用的资料将向你展示如何使用Python来完成Linux系统的日常管理任务,如何使用当下火热的DevOps工具,包括Docker、Kubernetes和Terraform。
对数百万专业人士来说,学习如何与Linux交互及实现自动化是必不可少的技能。通过这本书,你将学会如何使用容器开发软件、解决问题,以及如何监控、测试、负载测试和操作你的软件。想寻找借助Python解决问题的有效方法?看这本书没错。
内容简介
Python基础知识,简单介绍语言特性。
如何自动处理文本,编写命令行工具和自动处理文件系统。
Linux实用程序、包管理、构建系统、监控、监测和自动化测试。
云计算、IaC、Kubernetes和Serverless。
站在DevOps的角度探讨机器学习和数据工程。
构建、部署和优化一个机器学习项目。
作者简介
NoahGift是西北大学和杜克大学研究生院数据科学专业与工程项目的讲师和顾问。
KennedyBehrman是一位资深顾问,专门为初创企业设计和实施云解决方案。
AlfredoDeza是一位软件工程师和开源软件开发者,他重建了公司的基础设施。
GrigGheorghiu是一名程序员、研究实验室主任、系统/网络/安全架构师和软件测试工程师。
目录
- 前言.1
- 第1章PythonDevOps基础知识11
- 1.1安装和运行Python12
- 1.1.1Pythonshell12
- 1.1.2JupyterNotebooks13
- 1.2过程式程序设计13
- 1.2.1变量14
- 1.2.2基本的数学运算15
- 1.2.3注释15
- 1.2.4内置函数16
- 1.3执行控制17
- 1.3.1if/elif/else.17
- 1.3.2for循环.18
- 1.3.3while循环20
- 1.4处理异常20
- 1.5内置对象21
- 1.5.1对象是什么.21
- 1.5.2对象的方法和属性22
- 1.5.3序列23
- 1.6函数.35
- 1.6.1函数剖析36
- 1.6.2函数是对象.37
- 1.6.3匿名函数38
- 1.7使用正则表达式39
- 1.7.1搜索39
- 1.7.2字符集合40
- 1.7.3字符类41
- 1.7.4分组41
- 1.7.5具名分组42
- 1.7.6查找所有42
- 1.7.7查找迭代器.42
- 1.7.8替换43
- 1.7.9编译43
- 1.8惰性求值44
- 1.8.1生成器44
- 1.8.2生成器推导.45
- 1.9更多IPython功能.46
- 1.9.1在IPython中运行UNIXshell命令46
- 1.9.2使用IPython的魔法命令47
- 1.10练习题.47
- 第2章文件和文件系统自动化处理49
- 2.1读写文件49
- 2.2使用正则表达式搜索文本.59
- 2.3处理大型文件.61
- 2.4加密文本62
- 2.4.1哈希和hashlib63
- 2.4.2使用Cryptography库加密63
- 2.5os模块65
- 2.6使用os.path管理文件和目录.67
- 2.7使用os.walk遍历目录树70
- 2.8使用pathlib处理路径对象71
- 第3章使用命令行.73
- 3.1使用shell73
- 3.1.1使用sys模块探知系统信息73
- 3.1.2使用os模块处理操作系统.74
- 3.1.3使用subprocess模块派生进程.75
- 3.2编写命令行工具77
- 3.2.1使用sys.argv.79
- 3.2.2使用argparse.81
- 3.2.3使用click.85
- 3.2.4使用fire90
- 3.2.5实现插件系统95
- 3.3案例分析:使用命令行工具提速Python96
- 3.3.1使用NumbaJIT编译器97
- 3.3.2通过PythonCUDA使用GPU99
- 3.3.3使用Numba真正多核多线程运行Python代码100
- 3.3.4k均值聚类算法.101
- 3.4练习题.103
- 第4章Linux实用程序105
- 4.1磁盘实用程序106
- 4.1.1衡量性能106
- 4.1.2分区.108
- 4.1.3获取特定的设备信息109
- 4.2网络实用程序111
- 4.2.1SSH隧道111
- 4.2.2使用ApacheBenchmark(ab)评测HTTP.112
- 4.2.3使用molotov做负载测试.113
- 4.3CPU实用程序.116
- 4.3.1CPU实用程序简介116
- 4.3.2使用htop查看进程.116
- 4.4使用Bash和ZSH118
- 4.4.1自定义Pythonshell.119
- 4.4.2递归路径模式匹配120
- 4.4.3搜索和替换确认提示120
- 4.4.4删除Python临时文件122
- 4.4.5列出和筛选进程122
- 4.4.6UNIX时间戳123
- 4.5Python与Bash和ZSH混合使用124
- 4.5.1随机密码生成器124
- 4.5.2这个模块是否存在125
- 4.5.3进入模块所在的目录125
- 4.5.4把CSV文件转换成JSON文件.126
- 4.6Python单行程序.127
- 4.6.1调试器127
- 4.6.2这段代码的运行速度有多快128
- 4.7strace.129
- 4.8练习题.131
- 4.9实操题.132
- 第5章包管理133
- 5.1打包简介.134
- 5.1.1打包的重要性.134
- 5.1.2何时不需要打包134
- 5.2打包准则.135