新書推薦:
《
宋代冠服图志(详尽展示宋代各类冠服 精美插图 考据严谨 细节丰富)
》
售價:HK$
87.4
《
形似神异:什么是中日传统政治文化的结构性差异
》
售價:HK$
55.8
《
养育不好惹的小孩
》
售價:HK$
77.3
《
加加美高浩的手部绘画技法 II
》
售價:HK$
89.4
《
卡特里娜(“同一颗星球”丛书)
》
售價:HK$
87.4
《
伟大民族:从路易十五到拿破仑的法国史(方尖碑)
》
售價:HK$
188.2
《
古今“书画同源”论辨——中国书法与中国绘画的关系问题兼中国画笔墨研究
》
售價:HK$
132.2
《
《日本文学史序说》讲演录
》
售價:HK$
72.8
|
編輯推薦: |
Python是一门非常灵活的编程语言,本书特色在于对Python的基础知识与应用辅以大量实例进行讲解,读者可以通过这些程序实例事半功倍地学会Python。
|
內容簡介: |
《Python数据科学零基础一本通》是一本专为没有编程基础的读者编写的Python入门书籍,全书包含800多个程序实例及200多道实践习题,一步一步详细讲解Python语法的基础知识,同时也将应用范围拓展至图形界面设计、影像处理、图表绘制、文字识别、词云、股市资料摘取与图表制作、线性代数、基础统计以及与数据科学相关的Numpy、Scipy、Pandas。
|
關於作者: |
洪锦魁是中国台湾计算机专家,IT图书知名作者。其著作特色为所有程序语法会依特性分类,同时以实用的程序实例进行解说,让读者可以事半功倍地轻松掌握相关知识。
|
目錄:
|
第 1 章? 基本概念
1-1? 认识 Python?................................2
1-2? Python 的起源?.............................2
1-3? Python 语言发展史.......................3
1-4? Python 的应用范围?......................4
1-5? 静态语言与动态语言?.....................4
1-6? 跨平台的程序语言?.........................5
1-7? 系统的安装与执行?.........................5
1-8? Python?2 与 Python?3 不相容的
? ? ???验证?...........................................5
1-9? 文件的建立、存储、执行与打开?......6
1-9-1 文件的建立 ....................................... 6
1-9-2 文件的存储 ....................................... 7
1-9-3 文件的执行 ....................................... 7
1-9-4 打开文件 ........................................... 8
1-10? 程序注释?...................................8
1-10-1 注释符号 # ...................................... 8
1-10-2 三个单引号或双引号 ..................... 9
1-11? Python 彩蛋?..............................9
习题 ............................................................. 10
第 2 章? 认识变量与基本数学运算
2-1? 用 Python 做计算?.......................12
2-2? 认识变量?...................................12
2-2-1 基本概念 ..................................... 12
2-2-2 认识变量的地址 ............................. 14
2-3? 认识程序的意义?..........................14
2-4? 认识注释的意义?..........................15
2-5? Python 变量与其他程序语言的
? ? ???差异?.........................................15
2-6? 变量的命名原则?..........................15
2-7? 基本数学运算?.............................17
2-7-1 四则运算
2-7-2 余数和整除 ..................................... 17
2-7-3 次方................................................. 18
2-7-4 Python 语言控制运算的优先级 ..... 18
2-8? 指派运算符?................................18
2-9? Python 等号的多重指定使用?........19
2-10? 删除变量?.................................20
2-11? Python 的断行?.........................20
2-11-1 一行有多个语句 ........................... 20
2-11-2 将一个语句分成多行.................... 21
2-12? 专题复利计算 计算圆面积
? ? ? ??与圆周长?.................................21
2-12-1 银行存款复利的计算 ................... 21
2-12-2 计算圆面积与周长 ....................... 22
习题 ............................................................. 22
第 3 章? Python 的基本数据类型
3-1? type? 函数?...............................26
3-2? 数值数据类型?.............................26
3-2-1 整数 int ........................................... 26
3-2-2 浮点数 ............................................. 27
3-2-3 基本数值数据的使用 ..................... 27
3-2-4 整数与浮点数的运算 ..................... 27
3-2-5 二进制整数与函数 bin ................ 28
3-2-6 八进制整数与函数 oct ................ 29
3-2-7 十六进制整数与函数 hex ........... 29
3-2-8 强制数据类型的转换 ..................... 29
3-2-9 数值运算常用的函数 ..................... 30
3-2-10 科学记数法 ................................... 31
3-3? 布尔值数据类型?..........................32
3-4? 字符串数据类型?..........................34
3-4-1 字符串的连接 ................................. 34
3-4-2 处理多于一行的字符串 ................. 35
3-4-3 转义字符
3-4-4 str 函数 ........................................ 36
3-4-5 将字符串转换为整数 ..................... 37
3-4-6 字符串与整数相乘产生字符串
复制效果......................................... 37
3-4-7 聪明地使用字符串加法和换行
字符 \n ............................................ 38
3-4-8 字符串前加 r ................................... 38
3-5? 字符串与字符.............................38
3-5-1 ASCII 码 ......................................... 39
3-5-2 Unicode 码 ...................................... 39
3-5-3 utf-8 编码 ........................................ 40
3-6? bytes 数据 ................................40
3-6-1 Unicode 字符串转成 bytes 数据 ..... 41
3-6-2 bytes 数据转成 Unicode 字符串 ..... 42
3-7? 专题地球到月球时间计算
? ? 计算坐标轴两点之间的距离 ...........42
3-7-1 计算地球到月球所需时间 .............. 42
3-7-2 计算坐标轴两个点之间的距离 ...... 43
习题 ............................................................. 44
第 4 章? 基本输入与输出
4-1? Python 的辅助说明 help ..........47
4-2? 格式化输出数据使用 print .........47
4-2-1 函数 print 的基本语法 ................ 47
4-2-2 格式化 print 输出 ........................ 48
4-2-3 精准控制格式化的输出 ................. 50
4-2-4 format 函数 ................................. 52
4-2-5 字符串输出与基本排版的应用 ...... 54
4-2-6 一个无聊的操作 ............................. 54
4-3? 输出数据到文件..........................55
4-3-1 打开一个文件 open ..................... 55
4-3-2 使用 print 函数输出数据到
文件 ................................................ 56
4-4? 数据输入 input ........................56
4-5? 处理字符串的数学运算 eval ......58
4-6? 列出所有内建函数 dir ...............59
4-7? 专题温度转换 房贷问题 正五
? ? 角形面积 利用经纬度计算距离.....59
4-7-1 设计摄氏温度和华氏温度的转换
4-7-2 房屋贷款问题 ................................. 60
4-7-3 正五角形面积 ................................. 61
4-7-4 利用经纬度计算地球各城市间的
距离 ................................................ 62
习题 ............................................................. 63
第 5 章? 流程控制及 if 语句的使用
5-1? 关系运算符................................67
5-2? 逻辑运算符 ................................68
5-3? if 语句.......................................69
5-4? if else 语句............................71
5-5? if elif else 语句 ..................73
5-6? 嵌套的 if 语句.............................76
5-7? 尚未设置的变量值 None..............76
5-8? 专题BMI 程序 猜出生日期
? ? ? 十二生肖系统 线性方程式...........77
5-8-1 设计人体体重健康判断程序 .......... 77
5-8-2 猜出生日期 ..................................... 78
5-8-3 十二生肖系统 ................................. 80
5-8-4 求一元二次方程式的根 ................. 81
5-8-5 求解联立线性方程式 ..................... 82
习题 ............................................................. 82
第 6 章? 列表
6-1? 认识列表 ...................................87
6-1-1 列表基本定义 ................................. 87
6-1-2 读取列表元素 ................................. 88
6-1-3 列表切片 ......................................... 89
6-1-4 列表索引值是 -1 ............................ 90
6-1-5 列表最大值 max 、最小值
min 、总和 sum ....................... 91
6-1-6 列表个数 len ............................... 92
6-1-7 更改列表元素的内容 ..................... 92
6-1-8 列表的相加 ..................................... 93
6-1-9 列表乘以一个数字 ......................... 94
6-1-10 列表元素的加法操作 ................... 94
6-1-11 删除列表元素 ............................... 95
6-1-12 列表为空列表的判断 ................... 96
6-1-13 删除列表 ....................................... 96
6-1-14 补充多重指定与列表
6-2? Python 简单的面向对象概念........97
6-2-1 更改字符串大小写 lower
upper title ................................ 97
6-2-2 删除空格符 rstrip lstrip
strip ............................................. 98
6-2-3 格式化字符串位置 center
ljust rjust .................................. 99
6-2-4 dir 获得系统内部对象的方法 ... 100
6-3? 获得列表的方法........................101
6-4? 增加与删除列表元素 .................102
6-4-1 在列表末端增加元素 append ... 102
6-4-2 插入列表元素 insert .................. 102
6-4-3 删除列表元素 pop ..................... 103
6-4-4 删除指定的元素 remove ........... 103
6-5? 列表的排序..............................104
6-5-1 颠倒排序 reverse ....................... 104
6-5-2 sort 排序 .................................... 105
6-5-3 sorted 排序 ................................ 106
6-6? 进阶列表操作...........................107
6-6-1 index .......................................... 107
6-6-2 count .......................................... 108
6-7? 列表内含列表...........................108
6-7-1 再谈 append ............................... 109
6-7-2 extend ........................................ 110
6-7-3 再看二维列表 ............................... 110
6-8? 列表的赋值与切片复制 ..............111
6-8-1 列表赋值 ........................................111
6-8-2 地址的概念 ................................... 112
6-8-3 列表的切片复制 ........................... 113
6-8-4 浅拷贝与深拷贝 ........................... 114
6-9? 再谈字符串..............................115
6-9-1 字符串的索引 ............................... 115
6-9-2 字符串切片 ................................... 115
6-9-3 函数或方法 ................................... 116
6-9-4 将字符串转成列表 ....................... 116
6-9-5 切片赋值的应用 ........................... 117
6-9-6 使用 split 分割字符串 ............... 117
6-9-7 列表元素的组合
6-9-8 字符串的其他方法 ....................... 118
6-10? in 和 not in 表达式..................118
6-11? is 和 is not 表达式 ..................119
6-11-1 整数变量在内存地址的观察 ...... 120
6-11-2 将 is 和 is not 表达式应用于整数
变量 ............................................ 120
6-11-3 将 is 和 is not 表达式应用于列表
变量 ............................................ 121
6-11-4 将 is 应用于 None ....................... 121
6-12? enumerate 对象 ....................122
6-13? 专题建立大型列表 用户账号
? ? ? 管理系统 文件加密................123
6-13-1 制作大型的列表数据 ............... 123
6-13-2 用户账号管理系统 .................. 123
6-13-3 文件加密 ..................................... 124
习题 ........................................................... 124
第 7 章? 循环设计
7-1? 基本 for 循环 ...........................129
7-1-1 for 循环基本操作 ......................... 130
7-1-2 程序代码区块只有一行 ............... 130
7-1-3 程序代码区块有多行 ................... 131
7-1-4 将 for 循环应用于列表区间
元素 .............................................. 131
7-1-5 将 for 循环应用于数据类别的
判断 .............................................. 132
7-1-6 删除列表内重复的元素 ............... 132
7-1-7 活用 for 循环 ................................ 133
7-2? range 函数...........................133
7-2-1 只有一个参数的 range 函数的
应用 .............................................. 134
7-2-2 扩充专题银行存款复利的轨迹 .... 135
7-2-3 有两个参数的 range 函数 ......... 135
7-2-4 有 3 个参数的 range 函数 ......... 136
7-2-5 活用 range ................................. 136
7-2-6 删除列表内所有元素 ................... 137
7-2-7 列表生成的应用 .......................... 138
7-2-8 打印含列表元素的列表 ............... 140
7-2-9 含有条件式的列表生成
7-2-10 列出 ASCII 码值或 Unicode 码值
的字符 ........................................ 141
7-3? 进阶的 for 循环应用 ..................142
7-3-1 嵌套 for 循环 ................................ 142
7-3-2 强制离开 for 循环break
指令 .............................................. 143
7-3-3 for 循环暂时停止不往下执行
continue 指令 ................................ 144
7-3-4 for else 循环 ............................. 146
7-4? while 循环...............................147
7-4-1 基本 while 循环 ............................ 148
7-4-2 认识哨兵值 ................................... 149
7-4-3 预测学费 ....................................... 149
7-4-4 嵌套 while 循环 ............................ 150
7-4-5 强制离开 while 循环break
指令 .............................................. 150
7-4-6 while 循环暂时停止continue
指令 .............................................. 151
7-4-7 while 循环条件表达式与可迭代
对象 .............................................. 152
7-4-8 无限循环与 pass ........................... 153
7-5? enumerate 对象使用 for 循环
? ? 解析 .......................................153
7-6? 专题购物车设计 成绩系统
? ? 圆周率 ....................................155
7-6-1 设计购物车系统 ........................... 155
7-6-2 建立真实的成绩系统 ................... 156
7-6-3 计算圆周率 ................................... 157
习题 ........................................................... 158
第 8 章? 元组
8-1? 元组的定义..............................163
8-2? 读取元组元素...........................164
8-3? 遍历所有元组元素.....................164
8-4? 修改元组内容产生错误的实例.....164
8-5? 使用全新定义方式修改元组
? ? 元素 .......................................165
8-6? 元组切片 .................................165
8-8? 列表与元组数据互换 .................167
8-9? 其他常用的元组方法 .................168
8-10? enumerate 对象在元组中的
? ? ? 使用 .....................................168
8-11? 使用 zip 打包多个对象..........169
8-12? 生成式 ..................................171
8-13? 制作大型的元组数据................171
8-14? 元组的功能 ............................172
8-15? 专题认识元组 统计应用....172
8-15-1 认识元组 ..................................... 172
8-15-2 基础统计应用 ............................. 173
习题 ........................................................... 173
第 9 章? 字典
9-1? 字典的基本操作........................176
9-1-1 定义字典 .................................... 176
9-1-2 列出字典元素的值 ....................... 177
9-1-3 增加字典元素 ............................... 178
9-1-4 更改字典元素内容 ....................... 179
9-1-5 删除字典特定元素 ....................... 179
9-1-6 字典的 pop 方法 ....................... 180
9-1-7 字典的 popitem 方法 ................ 180
9-1-8 删除字典所有元素 ....................... 181
9-1-9 删除字典 ....................................... 181
9-1-10 建立一个空字典 ......................... 182
9-1-11 字典的复制 ................................. 182
9-1-12 取得字典元素数量 ..................... 183
9-1-13 验证元素是否存在 ..................... 183
9-1-14 设计字典的可读性技巧.............. 184
9-1-15 合并字典 update ...................... 185
9-1-16 dict ........................................... 185
9-1-17 再谈 zip ................................... 186
9-1-18 人工智能语意分析.............. 186
9-2? 遍历字典 .................................186
9-2-1 遍历字典的键 :值 ....................... 187
9-2-2 遍历字典的键 ............................... 188
9-2-3 依键排序与遍历字典 ................... 189
9-2-4 遍历字典的值 ............................... 189
9-2-5 依值排序与遍历字典的值
9-3? 建立字典列表...........................190
9-4? 字典内键的值是列表 .................192
9-5? 字典内键的值是字典 .................193
9-6? while 循环在字典中的应用.........194
9-7? 字典常用的函数和方法 ..............194
9-7-1 len .............................................. 194
9-7-2 fromkeys .................................... 195
9-7-3 get .............................................. 196
9-7-4 setdefault ................................... 196
9-8? 制作大型的字典数据 .................197
9-9? 专题文件分析 字典生成式
? ? ? 英汉字典 文件加密.................198
9-9-1 传统方式分析文章的文字与字数 198
9-9-2 字典生成式 ................................... 199
9-9-3 设计季节的英汉字典 ................... 199
9-9-4 文件加密 ....................................... 200
习题 ........................................................... 201
|
內容試閱:
|
序
多次与教育界的朋友相聚,谈到计算机语言的发展趋势时,大家一致认为 Python 是
当今最重要的计算机语言。许多知名公司,例如 Google、Facebook 等皆已将 Python 列
为必备计算机语言。许多人想学 Python,市面上的书也不少,但书中对 Python 语法的
讲解并不完整,造成读者学习上的障碍,读者读完一本 Python 书籍,仍然看不懂专家写
的 Python 程序。因此,笔者决定撰写一本用丰富、实用、有趣的实例完整且深入讲解
Python 语法的入门书籍。
Python 以简洁著名,语法非常灵活,同时拥有丰富、实用的模块。本书除了以实例
解说 Python 语法,还会穿插讲解各种模块,以帮助读者更灵活地掌握 Python。此外,笔
者也尝试在书中穿插基本的科学、数学、统计与人工智能的基础知识,帮助读者为进一
步的学习打下扎实的基础。
本书包含 800 多个程序实例,搭配 400 多个模块,并辅以 200 多道实践习题,细致
讲解 Python 语法。本书也会说明下列知识与应用 :
? 人工智能基础知识 ;
? Python 彩蛋 ;
? 从 bytes 数 据、 编 码(encode)、 译码(decode)说起,到精通列表(list)、元组
(tuple)、字典(dict)、集合(set);
? 从小型列表、元组、字典到大型数据资料的建立 ;
? 生成式(generator)建立 Python 数据结构 ;
? 在坐标轴内计算任意两点之间的距离,同时解说与人工智能的关联 ;
? 用经纬度计算地球任意两座城市之间的距离,学习取得地球任意位置的经纬度 ;
? 用莱布尼茨公式、尼拉卡莎级数、蒙特卡罗模拟计算圆周率 ;
? 讲解基础函数观念,也深入到嵌套、closure、lambda、Decorator 等高阶应用 ;
? 对 map 和 reduce 进行完整解说,并进一步配合 lambda 解说高级应用 ;
? 建立类别的同时深入讲解装饰器 @property、@classmethod、@staticmethod 与类别
特殊属性与方法 ;
? 设计与应用自己设计的模块、活用外部模块(module);
? 赌场骗局 ;
? 自己设计加密与解密程序 ;
? Python 的输入与输出 ;
? 文件压缩与解压缩 ;
? 程序除错与异常处理 ;
? 文件读取与目录管理 ;
? 剪贴板应用 ;
? 正则表达式 ;
? 递归式观念与碎形 Fractal ;
? 图像处理与文字辨识,更进一步说明计算机储存图像的方法 ;
? 基本与进阶 QR code 制作 ;
? 词云(Word Cloud)设计 ;
? GUI 设计 :设计小计算器 ;
? 动画与游戏 ;
? matplotlib 中英文图表绘制 ;
? 说明 CSV 和 JSON 文件 ;
? 股市数据读取与图表制作 ;
? Python 解线性代数 ;
? Python 解联立方程式 ;
? Python 执行数据分析 ;
? 科学计算与数据分析 Numpy、Scipy、Pandas。
笔者编写过许多计算机领域的著作,本书将沿袭笔者以往著作的特色,程序实例丰
富。相信读者通过学习本书内容,一定可以快速精通 Python。笔者虽力求完美,但是书
中不足与疏漏在所难免,请不吝指正。
洪锦魁
2019.10.31
|
|