「数据挖掘入门系列」Python快速入门
Python环境搭建
本次入门系列将使用Python作为开发语言。要使用Python语言,我们先来搭建Python开发平台。我们将基于Python 2.7版本、以及Python的开发发行版本Anaconda版本来开发。
Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。
下载地址:
https://www.anaconda.com/distribution/,注意要下载2.7版本

下载好Anaconda安装包后,即可安装,安装好后,我们可以来测试下Python环境是否已经搭建好。

Python语言入门
本小节将简单介绍Python语言,此处不会涉及过多的Python语言细节。例如:面向对象之类。此处主要介绍后续学习数据挖掘过程中会使用到的语法。
Hello Python
此案例将在控制台上打印 Hello, Python。
1、创建一个文本文件,并命名为hello_python.py
2、编写以下内容
# 打印字符串
print 'hello, python'
3、在命令行中执行命令 python hello_python.py
多重赋值
Python中支持多重赋值
# -*- coding: utf-8 -*
# 多重赋值
zhangsan, lisi, wangwu = u'张三', u'李四', u'王五'
print zhangsan, lisi, wangwu
注意:
- 在python中要使用中文,需要在文件头上加入 # -*- coding: utf-8 –*
- 字符串应该使用 u开头
条件判断
python条件判断可以使用 if …. elif … else,但逻辑条件使用 and、or。Python一般不使用花括号,而使用缩进对齐来作为区分。参考以下代码:
'''
案例三:
定义变量 username 和 password
1. 如果 username 为 abc,且password为 123, 打印 正确
2. 如果 username 不为 abc,打印用户名错误
3. 如果 password 不为 123,打印密码错误
'''
username = 'abc'
password = '123' if username == 'abc' and password == '123':
print u'正确'
else:
if username != 'abc':
print u'用户名错误'
else:
print u'密码错误'
for循环
# 打印 1-10之间的数字
for i in range(1, 11):
print i
函数
在Python可以使用def或者lambda表达式来定义函数:
# 定义一个函数计算两个数字的和
def add(a, b):
return a + b # 调用函数
print add(1, 1) print '==' * 10 # 使用 lambda表达式定义函数
add_lambda = lambda x,y: x + y
print add_lambda(1, 1)
集合
以下代码演示列表、元组、字典的使用
# 定义列表
list1 = [1,2,3,4,5]
# 定义元组
tuple1 = (1,2,3,4)
# 定义字典
dict1 = {'zhangsan':20, 'lisi': 30} print list1
print tuple1
print dict1
注意:元组的元素是不可以被修改的。
可以使用 []来访问集合的元素
函数式编程
Python支持函数式编程,编写起来也很方便
# 函数式编程
# 1. 初始化一个集合,包含数字从1-10
list2 = range(1, 11)
# 2. 对每一个数字 +1
list3 = map(lambda n:n+1, list2)
print list3
# 3. 过滤集合中所有能够整除2的数字
list4 = filter(lambda n: n%2==0, list2)
print list4
使用库函数
Python中需要使用到外部的函数,可以使用import关键字来导入库函数
# 导入库
import math print math.pi
print math.sin(1) # 给math库取一个别名
import math as m print m.pi
添加第三方库
要使用Python进行数据挖掘开发,需要提前安装第三方库。Python中有非常丰富的第三方库。使用以下方式可以非常简便地安装第三方库。
使用pip安装。以下将演示使用pip来安装各类数据分析工具。
Numpy
Numpy实现了真正的数组功能。很多高级的库都依赖该库。我们可以使用pip来安装它。
pip install numpy
「数据挖掘入门系列」Python快速入门的更多相关文章
- WPF快速入门系列(8)——MVVM快速入门
一.引言 在前面介绍了WPF一些核心的内容,其中包括WPF布局.依赖属性.路由事件.绑定.命令.资源样式和模板.然而,在WPF还衍生出了一种很好的编程框架,即WVVM,在Web端开发有MVC,在WPF ...
- 给深度学习入门者的Python快速教程
给深度学习入门者的Python快速教程 基础篇 numpy和Matplotlib篇 本篇部分代码的下载地址: https://github.com/frombeijingwithlove/dlcv_f ...
- 深度学习入门者的Python快速教程 - 基础篇
5.1 Python简介 本章将介绍Python的最基本语法,以及一些和深度学习还有计算机视觉最相关的基本使用. 5.1.1 Python简史 Python是一门解释型的高级编程语言,特点是简单明 ...
- 给深度学习入门者的Python快速教程 - 番外篇之Python-OpenCV
这次博客园的排版彻底残了..高清版请移步: https://zhuanlan.zhihu.com/p/24425116 本篇是前面两篇教程: 给深度学习入门者的Python快速教程 - 基础篇 给深度 ...
- 给深度学习入门者的Python快速教程 - numpy和Matplotlib篇
始终无法有效把word排版好的粘贴过来,排版更佳版本请见知乎文章: https://zhuanlan.zhihu.com/p/24309547 实在搞不定博客园的排版,排版更佳的版本在: 给深度学习入 ...
- Python快速入门
Python快速入门 一.基础概要 命名:h.py Linux命令行运行:python h.py 注释.数字.字符串: 基本类型只有数字与字符串 #python注释是这样写的 ''' 当然也可以这样 ...
- python快速入门及进阶
python快速入门及进阶 by 小强
- Python快速入门PDF高清完整版免费下载|百度云盘
百度云盘:Python快速入门PDF高清完整版免费下载 提取码:w5y8 内容简介 这是一本Python快速入门书,基于Python 3.6编写.本书分为4部分,第一部分讲解Python的基础知识,对 ...
- ElasticSearch实战系列八: Filebeat快速入门和使用---图文详解
前言 本文主要介绍的是ELK日志系统中的Filebeat快速入门教程. ELK介绍 ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是 ...
随机推荐
- python条件与循环-循环
1 while语句 while用于实现循环语句,通过判断条件是否为真,来决定是否继续执行. 1.1 一般语法 语法如下: while expression: suite_to_repeat 1.2 计 ...
- 机器学习-TensorFlow建模过程 Linear Regression线性拟合应用
TensorFlow是咱们机器学习领域非常常用的一个组件,它在数据处理,模型建立,模型验证等等关于机器学习方面的领域都有很好的表现,前面的一节我已经简单介绍了一下TensorFlow里面基础的数据结构 ...
- python读取json文件
比如下图json数据,场景需要读取出wxid这项数据,然后传给后面的函数去使用 具体的脚本为 import json f =open('d:\\1024.json',encoding='utf-8') ...
- os模块常用方法笔记
os模块是程序和系统文件之间的交互接口,可以实现对文件的创建.删除等功能,以下对os模块的功能做一个笔记,方便以后学习和查找. import os os.getcwd() #获取当前工作目录,即当前p ...
- 宝塔面板管理阿里云服务器FTP不能用
# 宝塔面板管理阿里云,ftp不能用 解决方法 搜ftp点击设置 然后Ctrl+F搜索ForcePassiveIP 注意2在默认情况下是带#号的,去掉#号,后面的ip地址是阿里云的公网ip 重启,再次 ...
- spring @Scheduled注解 定时任务 详解
scheduled的使用注解的方式进行调度 先要配置spring.xml xmlns:task="http://www.springframework.org/schema/task&quo ...
- mvc jQuery 点击按钮实现导出Excel功能 参数长短不限
var exportSubmit=function(url, obj){ var form = $("<form>"); //定义一个form表单 form.attr( ...
- <img>和background-img区别
1. 是否占位 background-image是背景图片,是css的一个样式,不占位 <img />是一个块状元素,它是一个图片,是html的一个标签,占位 2.否可操作 backgro ...
- 了解EBP指针
在寄存器里面有很多寄存器虽然他们的功能和使用没有任何的区别,但是在长期的编程和使用中,在程序员习惯中已经默认的给每个寄存器赋上了特殊的含义,比如:EAX一般用来做返回值,ECX用于记数等等.在win3 ...
- 使用纯C++迭代器编写归并排序
第一次尝试用C++迭代器编写算法,使用的是纯迭代器 void mergeSort(vector<int>::iterator beg, vector<int>::iterato ...