目录 第1篇Python入门篇 第1章初识Python3 本章学习目标3 1.1Python概述3 1.1.1程序设计语言3 1.1.2Python简介5 1.2Python集成开发环境10 1.2.1Python集成开发环境简介10 1.2.2Python解释器的下载与安装10 1.2.3Python程序的两种运行方式13 1.3本章小结20 第2章初识Python程序21 本章学习目标21 2.1案例1: 计算两个化合物的相似度21 2.1.1化合物相似度介绍21 2.1.2计算两个化合物相似度的算法22 2.1.3计算两个化合物相似度的程序22 2.2案例2: 绘制苯环23 2.2.1苯环简介及绘制方法23 2.2.2绘制苯环的算法24 2.2.3绘制苯环的程序25 2.3Python基本语法28 2.3.1语法元素28 2.3.2语句34 2.3.3标识符的命名规则42 2.4Python程序的书写规范42 2.5程序设计方法概述43 2.5.1面向对象程序设计43 2.5.2面向过程程序设计44 2.6输入/输出常用的3个函数45 2.6.1input()函数45 2.6.2eval()函数46 2.6.3print()函数47 2.7标准库1: turtle库的使用方法49 2.7.1标准库的引入方法49 2.7.2turtle库简介50 2.7.3turtle库解析50 2.7.4turtle应用实例56 2.8本章小结62 Python程序设计——以医药数据处理为例目录第2篇Python进阶篇 第3章基本数据类型65 本章学习目标65 3.1数字类型及其操作65 3.1.1数字类型的概念65 3.1.2数字类型的表示65 3.1.3数字类型的运算操作符67 3.1.4内置的数字类型的函数68 3.1.5标准库2: math库的使用方法70 3.2案例3: 计算基本统计量72 3.2.1基本统计量的计算公式72 3.2.2基本统计量计算程序73 3.3字符串类型及其操作73 3.3.1字符串类型的概念74 3.3.2字符串类型的表示74 3.3.3字符串类型的运算操作符76 3.3.4内置的字符串处理函数78 3.3.5案例4: 查找化合物ID及水溶性值78 3.3.6内置的字符串处理方法79 3.4案例5: 清肺排毒汤处方展示83 3.4.1清肺排毒汤处方展示要求83 3.4.2清肺排毒汤处方展示算法84 3.4.3清肺排毒汤处方展示程序84 3.5案例6: 化合物水溶性数据的格式化输出86 3.5.1水溶性数据格式化输出规范86 3.5.2水溶性数据格式化输出算法86 3.5.3水溶性数据格式化输出程序87 3.6逻辑类型及其操作88 3.6.1逻辑类型的概念88 3.6.2逻辑类型的表示88 3.6.3逻辑类型的运算操作符88 3.6.4返回逻辑类型数据的运算89 3.6.5混合运算操作符的优先顺序90 3.7本章小结91 第4章程序的控制结构92 本章学习目标92 4.1程序结构概述92 4.1.1程序流程图92 4.1.2程序的基本结构93 4.2程序的顺序结构94 4.3程序的分支结构94 4.3.1分支结构简介94 4.3.2单分支结构if语句94 4.3.3二分支结构if…else…语句96 4.3.4多分支结构if…elif…else…语句97 4.3.5分支结构的嵌套100 4.4案例7: 外源化合物毒性分级101 4.4.1外源化合物毒性分级简介101 4.4.2外源化合物毒性分级标准101 4.4.3外源化合物毒性分级程序102 4.5程序的循环结构103 4.5.1循环结构103 4.5.2遍历循环: for语句104 4.5.3条件循环: while语句105 4.5.4break和continue语句106 4.5.5else扩展语句107 4.6标准库3: random库的使用方法108 4.6.1random库108 4.6.2random库解析109 4.7案例8: 蒙特卡罗方法求π的值111 4.7.1蒙特卡罗方法111 4.7.2蒙特卡罗方法求π值的算法111 4.7.3蒙特卡罗方法求π值的程序111 4.8程序的异常处理114 4.8.1异常简介114 4.8.2捕获并处理异常: try…except…结构115 4.8.3try…except…结构的高级用法117 4.9本章小结121 第5章函数122 本章学习目标122 5.1函数概述122 5.1.1函数的基本概念122 5.1.2使用函数编程的目的123 5.2函数的基本操作124 5.2.1函数的定义124 5.2.2函数的返回值126 5.2.3函数的调用127 5.2.4lambda表达式和匿名函数128 5.3函数的参数129 5.3.1参数传递的方式129 5.3.2函数形参的分类131 5.4变量的作用域135 5.4.1作用域基础135 5.4.2全局变量135 5.4.3局部变量137 5.4.4闭包变量138 5.4.5作用域规则138 5.5标准库4: datetime库的使用方法139 5.5.1datetime库简介139 5.5.2datetime库解析140 5.6递归函数142 5.6.1递归函数的概念143 5.6.2斐波那契数列145 5.6.3递归与循环的比较147 5.7Python内置函数148 5.7.169个内置函数148 5.7.2部分常用函数说明149 5.8本章小结151 第6章组合数据类型152 本章学习目标152 6.1组合数据类型概述152 6.1.1组合数据类型的概念152 6.1.2组合数据类型的分类152 6.2序列类型及其操作153 6.2.1序列的概念153 6.2.2序列共有的操作154 6.2.3元组及其个性化的操作157 6.2.4列表及其个性化的操作158 6.3案例9: 药品销售数据清理169 6.3.1药品销售数据清理方法169 6.3.2药品销售数据清理程序169 6.4集合类型及其操作172 6.4.1集合的概念172 6.4.2生成集合173 6.4.3集合的操作174 6.5字典类型及其操作176 6.5.1字典的概念177 6.5.2生成字典177 6.5.3字典的操作178 6.6案例10: 药品销售数据统计分析181 6.6.1药品销售数据统计分析算法181 6.6.2药品销售数据统计分析程序182 6.7第三方库1: jieba库的使用方法183 6.7.1jieba库概述184 6.7.2jieba库解析184 6.8文本词频统计185 6.8.1案例11: 一篇英文药学文献的词频统计185 6.8.2案例12: 一篇中文药学文献的词频统计188 6.9Python之禅190 6.9.1import this190 6.9.2this.py192 6.10本章小结193 第7章文件194 本章学习目标194 7.1文件概述194 7.1.1文件的概念194 7.1.2文件的分类194 7.1.3文件的打开方式195 7.2文件操作195 7.2.1文件的操作步骤195 7.2.2打开、关闭文件195 7.2.3读文件197 7.2.4写文件198 7.2.5文件指针定位199 7.3一、二维数据的文件操作200 7.3.1数据组织的维度与数据结构200 7.3.2一维数据的文件操作201 7.3.3二维数据的文件操作204 7.4案例13: 保存清理后的药品销售数据206 7.4.1药品销售数据格式化及写入文件的方法207 7.4.2保存清理后的药品销售数据的程序207 7.5高维数据的文件操作208 7.5.1高维数据的格式化208 7.5.2标准库5: json库的使用方法208 7.5.3案例14: 将药品销量统计数据写入JSON文件并读出解析209 7.6本章小结211 第8章第三方库212 本章学习目标212 8.1第三方库概述212 8.1.1第三方库简介212 8.1.2常用的第三方库212 8.2第三方库的管理方法214 8.2.1pip简介214 8.2.2安装第三方库214 8.2.3检查、升级、卸载第三方库216 8.3案例15: 打包Python绘制苯环的源程序217 8.3.1第三方库2: pyinstaller库的使用方法218 8.3.2利用pyinstaller库打包绘制苯环的源程序218 8.4案例16: 药品销售数据可视化展示219 8.4.1第三方库3: matplotlib.pyplot库的使用方法220 8.4.2利用pyplot绘制药品日销售趋势折线图221 8.4.3利用pyplot绘制Top20明星药销售数量柱形图223 8.4.4利用pyplot绘制Top20明星药销售数量南丁格尔玫瑰图225 8.5案例17: 绘制药学生核心素养词云图229 8.5.1第三方库4: wordcloud库的使用方法229 8.5.2设计绘制药学生核心素养词云图的算法230 8.5.3编写绘制药学生核心素养词云图的程序231 8.6本章小结232 第3篇Python实战医药数据处理专题篇 第9章药学信息处理235 本章学习目标235 9.1案例18: 采集PubChem网站药物结构数据235 9.1.1药物结构数据235 9.1.2第三方库5: selenium的使用方法236 9.1.3采集PubChem网站药物结构数据的方法239 9.1.4采集PubChem网站药物结构数据的爬虫程序241 9.2案例19: 计算屠呦呦诺贝尔奖药物的相似度244 9.2.1药物相似度244 9.2.2Anaconda平台245 9.2.3第三方库6: rdkit的使用方法246 9.2.4计算屠呦呦2个诺贝尔奖药物的相似度的算法247 9.2.5计算屠呦呦2个诺贝尔奖药物的相似度的程序247 9.3案例20: 利用聚类热图分析肺癌基因表达数据251 9.3.1聚类热图分析基因表达数据251 9.3.2第三方库7: pandas的使用方法252 9.3.3第三方库8: seaborn的使用方法256 9.3.4设计利用聚类热图分析肺癌(腺瘤和腺癌型)基因表达数据的算法258 9.3.5编写利用聚类热图分析肺癌(腺瘤和腺癌型)基因表达数据的程序258 9.4案例21: 利用高斯过程回归、随机森林和神经网络算法预测化合物的水溶性262 9.4.1利用机器学习方法预测化合物性质262 9.4.2第三方库9: numpy的使用方法262 9.4.3第三方库10: sklearn的使用方法265 9.4.4设计利用机器学习方法预测化合物水溶性的算法268 9.4.5编写利用机器学习方法预测化合物水溶性的程序269 9.5本章小结273 第10章医学信息处理274 本章学习目标274 10.1案例22: 基于随机森林算法识别潜在心脏病患者274 10.1.1心率变异信号处理简介274 10.1.2基于随机森林识别潜在心脏病患者算法276 10.1.3基于随机森林识别潜在心脏病患者程序280 10.2案例23: 基于卷积神经网络识别黑色素瘤284 10.2.1神经网络简介284 10.2.2第三方库11: keras的使用方法286 10.2.3卷积神经网络简介289 10.2.4黑色素瘤图像识别算法294 10.2.5黑色素瘤图像识别程序299 10.3案例24: 基于自然语言处理技术的电子病历实体识别303 10.3.1自然语言处理技术简介303 10.3.2使用自然语言处理技术进行文本分类简单示例306 10.3.3中文电子病历命名实体识别算法308 10.3.4中文电子病历命名实体识别程序315 10.4本章小结319 参考文献320