首页  软件  游戏  图书  电影  电视剧

请输入您要查询的图书:

 

图书 Python一行流:像专家一样写代码
内容
编辑推荐
"Python一行流》会教你阅读和编写一行流程序,系统性拆分和理解任意一行Python代码,像专家一样得心应手地编写强壮、紧凑的Python程序。本书有5个章节,覆盖了编程技巧、正则表达式、机器学习、数据科学的核心课题,以及许多有用的算法。通过对单行程序范例的详细介绍,本书解释了计算机科学的关键概念,并可用来提升编码与分析的重要技能。你会学到Python的进阶功能,例如列表解析、切片、lambda函数、正则表达式、map和reduce函数,以及切片赋值等。还将学到以下内容:
√ 借助各种数据结构解决真实世界的问题,例如用布尔索引从数据集中找出污染超过平均水平的城市。
√ 使用NumPy的基础功能,如数组、形状、轴、类型、广播、高级索引、切片、排序、搜索、聚合以及数据分析等。
√ 使用K-Means算法进行无监督学习,以对高维数组中的数据进行分析。
√ 编写更高级的正则表达式,会用到组与命名组、前向否定、转义字符、空白字符、字符集(以及反向字符集),以及贪婪/非贪婪操作符。
√ 理解一系列计算机科学主题,包括异形词、回文、幂集、排列、阶乘、素数、斐波那契数列、混淆加密、查找和排序算法。"
内容推荐
本书专注于从初学迈向进阶的Python编码技术:如何像专家一样写出优雅、准确、简洁高效的Python 单行代码;阅读任意一行Python 代码时,如何系统性地对其进行拆解和分析。全书分为6 个章节,以单行代码切入计算机科学的各个领域,包括Python 语言基础、编程技巧、基于NumPy的科学计算、机器学习的主要算法模型、正则表达式进阶、计算机科学中若干经典算法的单行实现等。
目录
导语 ........................................................................................................................ 1
Python 一行流的例子 ................................................................................................... 2
关于可读性的说明 ....................................................................................................... 3
这本书是给谁看的? ................................................................................................... 4
你会学到什么? ........................................................................................................... 5
线上资源 ....................................................................................................................... 6
1 Python 温故知新 ................................................................................................ 7
基本数据结构 ............................................................................................................... 8
数值数据类型和结构 ........................................................................................... 8
布尔值 ................................................................................................................... 8
字符串 ................................................................................................................. 11
关键字 None ....................................................................................................... 12
容器数据类型 ............................................................................................................. 13
列表 ..................................................................................................................... 13
堆栈 ..................................................................................................................... 16
集合 ..................................................................................................................... 17
字典 ..................................................................................................................... 19
成员 ..................................................................................................................... 20
XVIII Python 一行流
列表和字典解析 ................................................................................................. 20
控制流 ......................................................................................................................... 21
if、else 和 elif ..................................................................................................... 21
循环 ..................................................................................................................... 22
函数 ............................................................................................................................. 24
lambda 函数 ................................................................................................................. 24
总结 ............................................................................................................................. 25
2 Python 技巧 ..................................................................................................... 27
使用列表解析找出优选收入者 .................................................................................. 28
基础背景 ............................................................................................................. 28
代码 ..................................................................................................................... 30
它是如何工作的 ................................................................................................. 31
使用列表解析找出高信息价值的单词 ...................................................................... 31
基础背景 ............................................................................................................. 31
代码 ..................................................................................................................... 32
它是怎么工作的 ................................................................................................. 32
读取文件 ..................................................................................................................... 33
基础背景 ............................................................................................................. 33
代码 ..................................................................................................................... 34
它是怎么工作的 ................................................................................................. 34
使用 lambda 和 map 函数 ........................................................................................... 35
基础背景 ............................................................................................................. 35
代码 ..................................................................................................................... 36
它是如何工作的 ................................................................................................. 37
使用切片查找匹配子串及所处环境 .......................................................................... 38
基础背景 ............................................................................................................. 38
代码 ..................................................................................................................... 40
它是如何工作的 ................................................................................................. 41
目录 XIX
列表解析和切片 ......................................................................................................... 41
基础背景 ............................................................................................................. 42
代码 ..................................................................................................................... 42
它是如何工作的 ................................................................................................. 43
使用切片赋值来修复损坏的列表 .............................................................................. 43
基础背景 ............................................................................................................. 43
代码 ..................................................................................................................... 44
它是如何工作的 ................................................................................................. 45
使用列表连接分析心脏健康数据 .............................................................................. 46
基础背景 ............................................................................................................. 46
代码 ..................................................................................................................... 48
它是如何工作的 ................................................................................................. 48
使用生成器表达式查出未达大力度优惠工资标准的公司 .................................................. 48
基础背景 ............................................................................................................. 49
代码 ..................................................................................................................... 49
它是如何工作的 ................................................................................................. 50
使用 zip()函数格式化数据库 ..................................................................................... 51
基础背景 ............................................................................................................. 51
代码 ..................................................................................................................... 52
它是如何工作的 ................................................................................................. 53
总结 ............................................................................................................................. 54
3 数据科学 .......................................................................................................... 55
基础二维数组计算 ..................................................................................................... 56
基础背景 ............................................................................................................. 56
代码 ..................................................................................................................... 59
它是如何工作的 ................................................................................................. 60
使用 NumPy 数组:切片、广播和数组类型 ........................................................... 61
基础背景 ............................................................................................................. 61
XX Python 一行流
广播 ..................................................................................................................... 64
代码 ..................................................................................................................... 67
它是如何工作的 ................................................................................................. 68
使用条件数组查询、过滤和广播检测异常值 .......................................................... 70
基础背景 ............................................................................................................. 70
代码 ..................................................................................................................... 71
它是如何工作的 ................................................................................................. 72
使用布尔索引过滤二维数组 ...................................................................................... 74
基础背景 ............................................................................................................. 74
代码 ..................................................................................................................... 75
它是如何工作的 ................................................................................................. 76
使用广播、切片赋值和重塑清洗固定步长的数组元素 .......................................... 77
基础背景 ............................................................................................................. 77
代码 ..................................................................................................................... 80
它是如何工作的 ................................................................................................. 81
NumPy 中何时使用 sort()函数,何时使用 argsort()函数 ........................................ 82
基础背景 ............................................................................................................. 82
代码 ..................................................................................................................... 85
它是如何工作的 ................................................................................................. 85
如何使用 lambda 函数和布尔索引来过滤数组 ........................................................ 87
基础背景 ............................................................................................................. 87
代码 ..................................................................................................................... 87
它是如何工作的 ................................................................................................. 88
如何使用统计、数学和逻辑来创建高级数组过滤器 .............................................. 89
基础背景 ............................................................................................................. 89
代码 ..................................................................................................................... 93
它是如何工作的 ................................................................................................. 94
简单的关联分析:买了 X 的人也买了 Y .............................................................. 94
基础背景 ............................................................................................................. 94
代码 ..................................................................................................................... 95
目录 XXI
它是如何工作的 ................................................................................................. 96
使用中间关联分析寻找很好捆绑策略 ...................................................................... 98
基础背景 ............................................................................................................. 98
代码 ..................................................................................................................... 98
它是怎么工作的 ................................................................................................. 99
总结 ........................................................................................................................... 100
4 机器学习 ........................................................................................................ 102
监督式机器学习的基础知识 .................................................................................... 102
训练阶段 ........................................................................................................... 103
推理阶段 ........................................................................................................... 104
线性回归 ................................................................................................................... 104
基础背景 ........................................................................................................... 104
代码 ................................................................................................................... 107
它是如何工作的 ............................................................................................... 108
逻辑回归的一行流 ................................................................................................... 110
基础背景 ........................................................................................................... 110
Sigmoid 函数 ................................................................................................... 111
代码 ................................................................................................................... 114
它是如何工作的 ............................................................................................... 114
K-Means 聚类算法一行流 ....................................................................................... 116
基础背景 ........................................................................................................... 116
代码 ................................................................................................................... 119
它是如何工作的 ............................................................................................... 120
K-近邻算法一行流 ................................................................................................... 122
基础背景 ........................................................................................................... 122
代码 ................................................................................................................... 124
它是如何工作的 ............................................................................................... 125
神经网络分析一行流 ............................................................................................... 127
XXII Python 一行流
基础背景 ........................................................................................................... 127
代码 ................................................................................................................... 132
它是如何工作的 ............................................................................................... 133
决策树学习一行流 ................................................................................................... 136
基础背景 ........................................................................................................... 136
代码 ................................................................................................................... 137
它是如何工作的 ............................................................................................... 138
一行流计算方差最小的数据行 ................................................................................ 139
基础背景 ........................................................................................................... 139
代码 ................................................................................................................... 140
它是如何工作的 ............................................................................................... 141
基本统计一行流 ....................................................................................................... 142
基础背景 ........................................................................................................... 143
代码 ................................................................................................................... 144
它是如何工作的 ............................................................................................... 145
支持向量机分类一行流............................................................................................ 146
基础背景 ........................................................................................................... 147
代码 ................................................................................................................... 148
它是如何工作的 ............................................................................................... 149
随机森林分类一行流 ............................................................................................... 150
基础背景 ........................................................................................................... 150
代码 ................................................................................................................... 152
它是如何工作的 ............................................................................................... 152
总结 ........................................................................................................................... 154
5 正则表达式 .................................................................................................... 155
在字符串中找到基本文本模式 ................................................................................ 155
基础背景 ........................................................................................................... 156
代码 ................................................................................................................... 159
目录 XXIII
它是如何工作的 ............................................................................................... 159
用正则表达式编写你的第一个网络爬虫 ................................................................ 160
基础背景 ........................................................................................................... 160
代码 ................................................................................................................... 162
它是如何工作的 ............................................................................................... 162
分析 HTML 文档中的超链接 .................................................................................. 163
基础背景 ........................................................................................................... 163
代码 ................................................................................................................... 165
它是如何工作的 ............................................................................................... 166
从字符串中提取美元金额 ........................................................................................ 167
基础背景 ........................................................................................................... 168
代码 ................................................................................................................... 169
它是如何工作的 ............................................................................................... 169
找出不安全的 HTTP URL ........................................................................................ 170
基础背景 ........................................................................................................... 170
代码 ................................................................................................................... 171
它是如何工作的 ............................................................................................... 171
验证用户输入的时间格式(第一部分) ................................................................ 172
基础背景 ........................................................................................................... 172
代码 ................................................................................................................... 173
它是如何工作的 ............................................................................................... 174
验证用户输入的时间格式(第二部分) ................................................................ 174
基础背景 ........................................................................................................... 175
代码 ................................................................................................................... 175
它是如何工作的 ............................................................................................... 176
字符串中的重复检测 ............................................................................................... 176
基础背景 ........................................................................................................... 176
代码 ................................................................................................................... 177
它是如何工作的 ............................................................................................... 178
检测重复单词 ........................................................................................................... 179
XXIV Python 一行流
基础背景 ........................................................................................................... 179
代码 ................................................................................................................... 179
它是如何工作的 ............................................................................................... 180
用正则模式在多行字符串中进行修改 .................................................................... 181
基础背景 ........................................................................................................... 181
代码 ................................................................................................................... 181
它是如何工作的 ............................................................................................... 182
总结 ........................................................................................................................... 183
6 算法 ............................................................................................................... 184
用 lambda 函数及排序找出异形词 .......................................................................... 185
基础背景 ........................................................................................................... 185
代码 ................................................................................................................... 186
它是如何工作的 ............................................................................................... 187
用 lambda 函数和负索引切片找出回文 .................................................................. 188
基础背景 ........................................................................................................... 188
代码 ................................................................................................................... 189
它是如何工作的 ............................................................................................... 189
用递归阶乘函数计算排列数 .................................................................................... 189
基础背景 ........................................................................................................... 190
代码 ................................................................................................................... 192
它是如何工作的 ............................................................................................... 192
找到 Levenshtein 距离 .............................................................................................. 194
基础背景 ........................................................................................................... 194
代码 ................................................................................................................... 195
它是如何工作的 ............................................................................................... 195
通过函数式编程计算幂集 ........................................................................................ 198
基础背景 ........................................................................................................... 198
代码 ................................................................................................................... 200
目录 XXV
它是如何工作的 ............................................................................................... 200
用高级索引和列表解析来实现恺撒密码的加密 .................................................... 201
基础背景 ........................................................................................................... 201
代码 ................................................................................................................... 202
它是如何工作的 ............................................................................................... 203
用 Eratosthenes 筛法找出素数 ................................................................................. 204
基础背景 ........................................................................................................... 204
代码 ................................................................................................................... 205
它是如何工作的 ............................................................................................... 206
用 reduce()函数计算 Fibonacci 数列 ........................................................................ 211
基础背景 ........................................................................................................... 211
代码 ................................................................................................................... 211
它是如何工作的 ............................................................................................... 212
一种递归的二分查找算法 ........................................................................................ 214
基础背景 ........................................................................................................... 214
代码 ................................................................................................................... 216
它是如何工作的 ............................................................................................... 216
递归快速排序算法 ................................................................................................... 217
基础背景 ........................................................................................................... 218
代码 ................................................................................................................... 219
它是如何工作的 ............................................................................................... 219
总结 ........................................................................................................................... 220
后记 .................................................................................................................... 221
书评(媒体评论)
"推荐序一:干一行,爱“一行”
几年创业,几经浮沉,我又回到了编码一线,重拾写代码的乐趣。幸好当年读过几本经典书籍打底,如今重操旧业,尚能游刃有余。感慨中刚好春雨兄找我为《Python一行流》作序,读来很有感触,堪比当年经典,便欣然应允。
其实我一直是“一行流”的爱好者。早在使用 Python 2.3 版本的时代,我便尝试如何用一行代码完成字符串里的字符排序,并将过程和结果记录在博客 1 上。虽然自从 Python 2.4 版本增加了 sorted()函数后我的奇技淫巧便没了用武之地,但这种追求准确与极简的 Pythonic 哲学持续地影响着我,多年后我以改善 Python 程序为名出版了自己的第一本书。
与我的浅尝辄止不同,这本书把一行流当作了一个研究课题,所以整书极具体系。作者从 Python 语言、库和算法多个层面和角度去探寻更简明的代码写法,有助于读者建立深入挖掘语言特性的动力,最终提升读者的知识水平,写起代码如臂使指,“码”上生花。我曾在网上分享过一段利用数字图像形态学实现茶滤孔数计算的Python 程序,需要 80 行代码,而网友 Arkbird 用一行 mathematica 代码完成同样的算法,“我看不懂,但我大受震憾。” 读者们纷纷点赞。编写一行流的代码是一个“好程序员”的普遍追求,也是对语言、库和算法的掌握程度和编码能力的体现,但阅读本书显然有助于此,读完本书后我编写了自己的“一行流”版本:
print((""holes count: "", s := __import__('skimage', fromlist=['measure', 'morphology','io']))[0],
s.measure.label(s.morphology.binary_opening(s.io.imread(""sample.png"", as_gray=True) <0.5, selem=s.morphology.square(3)), return_num=True)[1])
代码行数“浓缩”80 倍之后,性能也提升了 37 倍,同时自我感觉对 Python 语言、skimage 库和数字图像算法的理解更进了一步。许多初学者入门后陷入不知道能用 Python 做什么的困惑,不妨读一下这本书,然后尝试把之前写过的代码改为“一行流”风格,应该能大有所获。
本书译者苏丹网名 su27,他是圈内驰名“文艺青年”,前几年一直听说他在写小说,搞文学创作。作为长年混迹文青基地豆瓣网的程序员,这并不奇怪,奇怪的是他突然翻译了这本书。不过 su27 毕竟是在 Python 的“黄埔军校”豆瓣团队中成长起来的,这对本书的品质提供了保障。在阅读这本书的过程中,也印证了我的所想,整本书清晰明了,极具美感,加上作者精心编排的知识体系,读来如上云梯,愉悦中知识就获得了提升,是以为序。
——赖勇浩
广州齐昌网络科技有限公司创始人兼总经理
《编写高质量代码:改善Python程序的91个建议》作者


推荐序二:Su27 般大气凌然

(Su27 当然比 Mig29 大气)
一直以为 Su27 在写科幻小说,
突然邀请来为新书写序,
只能感叹:
不会写科幻小说的程序员一定不是好翻译

一看内容,更感叹,探讨领域竟然如此“宅”:
专注揭露
如何在 Python 中
编写能浓缩在单行的
神级 Pytonic 代码
讲真,Guido 老爹当年将 lambda 引入 Python 时,就劝过:
函式编程虽好,可别贪杯;
为此专门重新设计语法,
将 Python 构造为专享基于排版来划分语法层次的通用脚本语言;
要知道,其它通用语言都通过标识符
(比如:{} begin end)来划分代码块,
本质上无论软件由多少行构成,
都可以写在一行里,
而编译器照样可以完美解析;
(实际上,很多混淆器就是这么干的.)

这样一来,
在 Python 中无论初中高级,
大家写出来的代码,
都会很相似,
很直白,
结构很清晰

但是,
脑力过剩的程序员当然要为智商寻求宣泄,
果断发现 Python 内置的炫酷可能性:
通过列表推导式,
就可以轻易绕过缩进规约,
将几个想法集中进一行,
配合 Lambda 就可以将更多行为集成到一行中;
立即,
代码看起来就不那么泯然众人矣 -> 第一眼根本看不明白要干什么

确实,这些可能性,
毕竟是老爹精心掩埋的珍宝,
以往也只有零星文章介绍几个案例,
这次是一整本书,可以大大过瘾;
翻译没毛病,老程序猿了;
版式也够 geek,
清晰区分了内容/代码/注释/点评;
(可惜,译者太自谦,
没好意思大力插入丰富译注,
将自己经验也配套给出,
下个版次,值得追加.)

内容上,结构清晰,
从语法,到模块,
到第三方模块,
并第一时间构建了自己的 元述式:
0: 问题阐述
1: 常规处理
2: 一行流代码
3: 如何工作的? 解析

这样一个个案例,
就象一片片精致的卡片,
有序拼贴起来,形成 一行流 小世界,
同时,
每个案例故事,
又都是能独立使用的,
随时可以拎出来用在具体工程中;

这应该是流式图书构建法

只可惜,没见到 海象表达式:= 相关案例,
这种新语法在 Python 3.8 中正式引入,
支持直接在列表推导式中进行复杂的判定,
结合迭代工具,简直可以在 [""列表""] 中构造整个儿世界;

真心建议,在修订版中,Su27 亲自补一章,将:= 结合到实用场景中,
作为中国版一行流大补丁,反馈回作者心上.
——大妈/ZoomQuiet PyUG 联合创始人,蟒营 ? 创始人


推荐序三
看到 su27 老师翻译的这本书,我不禁哑然失笑,十几年前我还在中国 Python 用户组的邮件列表里活跃的时候,经常花大量精力和同好们讨论怎么把一段程序写成一行流,一定要找出既简洁又高效的方法来才肯罢休,乐此不疲。从这个游戏出发,逐步形成了如何写出更加 Pythonic 的代码来的认知,而这个美学层面的认知升级,我至今受益不止。编码是快乐的,希望有更多人能从这种“寻找很好”的过程中,体会到代码之美。
——洪强宁 雅识科技联合创始人兼CTO


推荐序四
谈起 Python,从 2000 年到 2021 年,一门陪伴了我 20 多年的编程语言,其他语言大多是生命的过客,或者因为某些需求临时起意而去学习使用,但唯独 Python,从始至终用到了现在,但即便用了这么久,都不敢轻言对于 Python 已经了解,尤其谈起一行流,更是各种编程语言论坛里最爱比拼的项目之一,所谓一行流,就是能不能把一个功能用一行代码去实现,Python 的一行流既保证了代码的简洁,又不会牺牲很大的可读性,但一个看似如此简单的事情,如果不对这门编程语言掌握的非常透彻,是很难做到的。如此有趣的主题,这么多年来,却很少看到这个主题的图书,这次有幸读到这本书,也从中学到了很多,尤其是机器学习和算法两个章节,读过之后感觉醍醐灌顶,马上就可以把所学应用到日常工作中去了。同时,本书的翻译者 su27 老师本身也是资深的 Python 开发者,在翻译的准确度和流畅度方面,本书也远超同类图书。最后,很荣幸为此书写序,甚感开心,预祝此书大卖,能够帮助到更多的 Python 学习者与开发者。
——清风 前豆瓣技术总监,开 PA 创始人


推荐序五
《Python 一行流》 是一本适合 python 程序员进阶的书,帮助读者更好地领悟python 编程的思维方式。整本书从解决实际问题出发,通过一行流的形式,简洁清晰的解决问题,很多例子都给出了非常新颖的角度。更为难得是,作者并非一味的追求一行流,在多行代码能够带来更好阅读性的时候,作者也欣然推荐指出此处一行流的不住。苏老师的翻译流畅准确,阅读起来非常舒服,无论是中阶 python 程序员还是高阶程序员,相信通过阅读此书都能有所收获。
——彭宇 豆瓣平台架构负责人"
标签
缩略图
书名 Python一行流:像专家一样写代码
副书名
原作名
作者 (美)ChristianMayer(克里斯蒂安·迈耶)
译者
编者
绘者
出版社 电子工业出版社
商品编码(ISBN) 9787121419683
开本 其他
页数 248
版次 1
装订
字数
出版时间 2021-09-01
首版时间
印刷时间 2021-09-15
正文语种
读者对象
适用范围
发行范围
发行模式 实体书
首发网站
连载网址
图书大类 教育考试-考试-计算机类
图书小类
重量
CIP核字
中图分类号 TP311.561
丛书名
印张
印次 1
出版地
整理
媒质
用纸
是否注音
影印版本
出版商国别
是否套装
著作权合同登记号
版权提供者
定价
印数
出品方
作品荣誉
主角
配角
其他角色
一句话简介
立意
作品视角
所属系列
文章进度
内容简介
作者简介
目录
文摘
安全警示 适度休息有益身心健康,请勿长期沉迷于阅读小说。
随便看

 

兰台网图书档案馆全面收录古今中外各种图书,详细介绍图书的基本信息及目录、摘要等图书资料。

 

Copyright © 2004-2025 xlantai.com All Rights Reserved
更新时间:2025/5/8 23:41:13