《python 与数据挖掘 》一1.3 Python开发环境的搭建

简介: 本节书摘来自华章出版社《python 与数据挖掘 》一书中的第1章,第1.3节,作者张良均 杨海宏 何子健 杨 征,更多章节内容可以访问云栖社区“华章计算机”公众号查看。 1.3 Python开发环境的搭建 所谓编程语言,意指“与计算机交流时使用的语言”。

本节书摘来自华章出版社《python 与数据挖掘 》一书中的第1章,第1.3节,作者张良均 杨海宏 何子健 杨 征,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.3 Python开发环境的搭建

所谓编程语言,意指“与计算机交流时使用的语言”。它是一种被标准化的交流技
巧,用于连接程序员的思维和计算机的操作。学习编程语言的第一关,就是安装和环境配置。我们必须与计算机约定如何理解代码、指令和语法,才能够顺利地与计算机交流,赋予它复杂的功能。Python便是其中的一种“方言”。
本节将向大家详细介绍,如何在不同的操作系统上快捷地使用Python进行编程实现。

1.3.1 Python安装

对于新手,Python及其第三方模块在安装环节有许多已知的难题。比如源码编译的安装方式、环境变量的配置、不同模块之间的版本依赖问题。如果陷入其中的某一个泥潭之中,将浪费初学者大量的时间,消磨热情。当然,如果读者能独立克服,就能熟悉相关的重要概念,大有裨益。
为了能让读者顺利阅读本书的后续内容,以及避免不必要的麻烦,我们将采用更加简单的安装方式。本书使用的是Python的科学计算发行版——Anaconda。除Python本身之外,Anaconda囊括了科学计算和数据分析所需的主流模块,独立的包管理工具Conda以及两款不同风格的编辑器Jupyter和Spyder,具有开源精神且支持学术用途的免费额外性能提升。官方软件下载地址为:https://www.continuum.io/downloads
注意 本书使用的是当前主流的Python 2.7版本,有较多的网络参考资料。截至本书完稿时,Python作者宣布Python 2.x系列将会在2020年停止更新,Python 2.7是最后一个版本。Python 3.x拥有一系列重大的更新,包括一些基础的语法。在未来的日子里,越来越多的主流模块将逐渐转向Python 3.x版本。在社区真正成熟之前,我们建议入门级读者先熟练使用Python 2.7。

  1. Windows下安装Python
    Anaconda的存在使得在Windows图1-5 Windows下Anaconda的两个主要版本系统中安装Python得到极度简化,直接前往官方网站找到对应的下载内容(图1-5),并选择Python 2.7对应的安装包,注意区分32位和64位的版本。


982cc5293cf0c549eef6d940f5a402841b38315a


下载后运行Anaconda的安装程序,这里大部分的操作和一般软件的安装无异,需要注意的是:如图1-6所示,Anaconda默认会自动改写环境变量配置参数,使得用户能在任何的路径下使用Python命令行模式。


25aa289ce9f81dd918f99d51b2d81577e5d2104a


如果读者自行安装原始的Python版本,极容易忽略这一步,从而走入思维的盲区,导致永远不能自行安装成功。这也是我们推荐使用科学计算发行版Anaconda的原因。

  1. Linux下安装Python
    大多数Linux发行版,如CentOS、Debian、Ubuntu等,都已经自带了Python 2.x的主程序。因此,额外安装Anaconda需要做好管理的工作,避免两个不同版本的Python冲突,导致不必要的错误。如果读者确定内置版Python能够兼容书中代码,亦可不额外安装Anaconda。

下面介绍如何安装Anaconda,并避免与内置版的Python冲突,如图1-7所示。本教程以Ubuntu 16.06为例。
1)前往官方网站下载对应版本的Anaconda,默认情况下,Linux会自动将下载所得文件归档在“下载”文件夹中。
2)假设下载所得文件在“下载”这一文件夹中,如果不是,请替换路径,并输入下面的命令,以执行批处理指令,安装Anaconda。
$ bash ~/下载/Anaconda2-4.0.0-Linux-x86_64.sh


954bab80f029843e604616d9e1068930b35db317


安装过程中,将会在屏幕上打印出用户协议许可,你需要利用Enter继续阅读。阅读至文件末尾,输入yes并敲击Enter键来表示你同意以上内容并使用默认路径开始安装。
3)如图1-8所示,输入yes来确认允许Anaconda为你自动配置环境变量PATH。


c921cfd71ccfe1981a2e099bd917aa01f7cc7676


4)当看到图1-9中的欢迎信息之后,代表已经成功安装Anaconda。然后我们执行下面的命令,将Anaconda的位置加载至环境变量PATH的开头,使得当我们使用Python时,总是优先使用Anaconda版。
$ export PATH="$HOME/anaconda2/bin:$PATH"
之后,我们可以直接输入python,以检查是否能够正确使用Anaconda版的Python。


cc1d2d4f2525cb84ac0eda292710f62a8b02fae4


  1. Mac下安装Python
    类似Windows下的安装,Mac OS X系统用户可以直接前往官方网站下载一个图形化安装程序。同时,因为OS X系统是基于UNIX内核开发的,所以我们也能够打开终端,通过命令行的方式来安装。这里主要叙述利用终端安装的方法。

1)下载OS X下对应版本的Anaconda,如图1-10所示。
注意 利用终端安装Anaconda实际上是在进行“源码编译”。后续步骤中需要的是二进制文件(Command-Line Installer),而非图形化的安装界面(Graphical Installer)。


461d187f9f2b8005cf1044400f9a25912099977a


2)按下Alt + Space,打开Search界面,输入terminal,单击搜索出来的“Terminal”(终端)图标。
3)输入下面的命令,执行批处理指令,安装Anaconda,如图1-11所示。
$ bash~/Downloads/Anaconda2-4.0.0-MacOSX-x86_64.sh


b8bfcedf57b4e2d0836462c37b3cca4d48d95104


安装过程中,将会在屏幕上打印出用户协议许可,你需要利用Enter继续阅读。阅读至文件末尾,输入yes并敲击Enter键来表示你同意以上内容并使用默认路径开始安装。
4)输入yes来确认允许Anaconda为你自动配置环境变量PATH。
5)与Linux下安装类似,同样需要将Anaconda的位置加载至环境变量PATH的开头,使得当我们使用Python时,总是优先使用Anaconda版。
$ export PATH="$HOME/anaconda2/bin:$PATH"
之后,我们可以直接输入python,以检查是否能够正确使用Anaconda版的Python。

1.3.2 Python初识

1.命令行版本的Python Shell-Python(Command)
以Windows系统为例,安装Python后,你可以在开始菜单中,找到对应的Command Line版本的Python Shell,或者同时按下Win + R键,输入cmd并按回车,打开命令窗口,如图1-12所示。在命令窗口中输入python即可使用进入Python的命令行模式。


64da698fea0545c1b33eb1da46fe4692e4d1ae90



其中,可以看到对应的Python版本信息和系统信息。我们可以在标识符“>>>”后面输入代码,程序就会马上返回一个结果,如图1-13所示。


1bfdebac0f9d3cdd27226cebd4d74875f9aeb50a


Python Shell是交互式Shell,交互式是指当你输入代码到Python Shell中时就可以动态地看到相应的返回结果。
2.带图形界面的Python Shell-IDLE(Python GUI)
下面将要介绍的是带图形界面的Python GUI。在Windows下的所有程序上搜索IDLE,就可以直接打开Python Shell-IDLE。打开后界面如图1-14所示。


aea2eaa4a6583e22a472c9ffd7f84f4c8ed01f9a



我们同样可以在这个界面上输入代码,结果和在Command Line上输入的结果一样。但在这个界面上我们可以通过菜单栏的File –> New File 创建Python脚本,在Python脚本上写多行代码,保存为.py文件后并运行该脚本,而在Command Line上运行多行代码只能一行接着一行输入并按回车输出,显得十分繁琐。运行Python脚本实际上也是按顺序运行每行的代码,运行脚本后将回到Python GUI界面,这时候Python已经存储脚本运行后的数据,我们可以在界面上继续输入代码,如图1-15所示。本书的代码都会放在Python脚本中,方便读者阅读和运行。

82587f8703de38f7d97e308e10812224e027fc30


图1-15 Python GUI脚本界面
3.第三方Python IDE
IDE是集成开发环境(Integrated Development Environment)的英文简称。而第三方IDE通常聚合了更强大的功能,包括代码版本管理、项目代码管理、代码自动补全等。PyCharm就是这样一个跨平台的、多功能的集成开发环境,主要分为免费社区版(见图1-16)和付费商业版。


a9e9f6b48cc8fb4bba9e123d3cc3daaebf9f5c96


如图1-17所示,在选择创建项目以及确定项目存储路径之后,我们能看到一个清晰简洁的界面。左侧栏是项目管理窗口,负责组织Python实现的项目中所涉及的全部代码和数据文件。右边是正式的编辑区。在选择创建新的Python File之后,将能配合内置的自动补全、代码提示、调试运行功能进行代码的编辑、改正和优化。同时,它还能自动结合Git进行代码版本控制。有兴趣的读者可以自行查找资料。当我们需要做一个大型项目,代码量较多时,用带`` 有项目管理功能的PyCharm会更加方便。


2261817f0d6f0dc7e1e4ae117bea0652b80295fa


1.3.3 与读者的约定`javascript

`

1.排版格式说明
本书的示例代码格式分为两种,一种是Python IDLE的命令行代码,带有“>>>”。命令行代码可能马上会返回结果,这个结果会紧贴在命令行代码的下一行,结果的输出不带有“>>>”。
例如:

x = 1
x

1
另一种格式是带有上下分隔线的代码清单,这种格式用于展示某个完整的知识点。为读者阅读方便,当代码清单出现输出语句时,我们都把输出结果放在下一行,并用注释“# result:”标示 。如代码清单1-1所示:
代码清单1-1 某个知识点

print 1

result: 1

print 'Hello Python'

result:

Hello Python
其中“1-1”表示第1章第1个代码清单。为了叙述方便,一个完整的程序可能被拆分到多个代码清单中,在同一小节中的后续代码中,有可能会沿用先前已声明的变量。
2.示例代码使用说明
本书默认支持的Python版本为2.7.11,其中书中讲解的模块对应的版本号如表1-1所示。
本书附件资源按照章节组织,在代码附件的目录下会有第1章、第2章、第3章等子章节目录。在章节目录下包含了2个文件夹:“示例程序”文件夹和“上机实验”文件夹。“示例程序”文件夹包含3个子目录:code、data、tmp。其中,code包含正文中每个章节的全部代码清单;data包含代码清单中所使用的数据文件;tmp文件夹中包含示例程序运行的结果文件。在部分章节中,上述3个文件夹可能为空。“上机实验”文件夹主要针对每章最后的上机实验,给出了上机实验的参考答案。其子目录结构与示例程序一致。
读者下载附件资源后,直接使用Python运行对应的代码脚本(.py)即可观察结果。值得注意的是,使用Anaconda的读者只需保持目录结构即可完整运行程序,自行安装Python的读者,请确保你的模块版本与表1-1一致。


32b74419a57e7ce7037adeca0412a9c9689d3875
相关文章
|
4天前
|
数据处理 Python
如何使用Python的Pandas库进行数据排序和排名
【4月更文挑战第22天】Pandas Python库提供数据排序和排名功能。使用`sort_values()`按列进行升序或降序排序,如`df.sort_values(by='A', ascending=False)`。`rank()`函数用于计算排名,如`df['A'].rank(ascending=False)`。多列操作可传入列名列表,如`df.sort_values(by=['A', 'B'], ascending=[True, False])`和分别对'A'、'B'列排名。
14 2
|
3天前
|
机器学习/深度学习 数据挖掘 网络架构
Python对商店数据进行lstm和xgboost销售量时间序列建模预测分析
Python对商店数据进行lstm和xgboost销售量时间序列建模预测分析
15 0
|
4天前
|
机器学习/深度学习 算法 数据挖掘
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享-2
PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享
28 1
|
3天前
|
机器学习/深度学习 算法 算法框架/工具
数据分享|PYTHON用KERAS的LSTM神经网络进行时间序列预测天然气价格例子
数据分享|PYTHON用KERAS的LSTM神经网络进行时间序列预测天然气价格例子
24 0
|
1天前
|
机器学习/深度学习 存储 监控
数据分享|Python卷积神经网络CNN身份识别图像处理在疫情防控下口罩识别、人脸识别
数据分享|Python卷积神经网络CNN身份识别图像处理在疫情防控下口罩识别、人脸识别
|
1天前
|
机器学习/深度学习 数据采集 算法
Python信贷风控模型:Adaboost,XGBoost,SGD, SVC,随机森林, KNN预测信贷违约支付|数据分享
Python信贷风控模型:Adaboost,XGBoost,SGD, SVC,随机森林, KNN预测信贷违约支付|数据分享
Python信贷风控模型:Adaboost,XGBoost,SGD, SVC,随机森林, KNN预测信贷违约支付|数据分享
|
1天前
|
JSON 数据可视化 定位技术
python_将包含汉字的字典数据写入json(将datav的全省数据中的贵州区域数据取出来)
python_将包含汉字的字典数据写入json(将datav的全省数据中的贵州区域数据取出来)
5 0
|
3天前
|
机器学习/深度学习 算法 Python
数据分享|Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
数据分享|Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户
23 4
|
3天前
|
5G Python
Windows11搭建Python环境(Anaconda安装与使用)
Windows11搭建Python环境(Anaconda安装与使用)
18 0
|
3天前
|
数据挖掘 数据处理 索引
如何使用Python的Pandas库进行数据筛选和过滤?
Pandas是Python数据分析的核心库,提供DataFrame数据结构。基本步骤包括导入库、创建DataFrame及进行数据筛选。示例代码展示了如何通过布尔索引、`query()`和`loc[]`方法筛选`Age`大于19的记录。
10 0