您的位置:首页 > 编程语言 > Python开发

python数据挖掘01--python基础

2017-11-09 23:08 405 查看
1.lambda定义行内函数

f=lambda x: x+2 #定义函数f(x)= x+2
g=lambda x,y:x+y  #定义函数g(x,y)=x+y


2.数据结构

(1)列表和元组

列表方括号:a=[1,2,3] 元组圆括号b=(4,5,6) 。下标从0开始。

注意:列表可修改,元组不可修改。

复制列表:

b=a[:]

列表和元组的相关函数:

cmp(a,b):比较元素
len(a):返回列表元素个数
max(a):返回最大值
min(a):最小值
sum(a):求和
sorted(a):升序排序


列表方法:

a.append(1):将1添加到列表末尾
a.count(1):统计列表出现1的次数
a.extend([1,2]):将列表[1,2]的内容加到列表a末尾
a.index(1):从列表中找出第一个1的索引位置
a.insert(2,1):将1插入列表a的索引为2的位置
a.pop(1):移除列表中索引为1的元素


列表解析:

a=[1,2,3]
b=[]
for i in a:
b.append(i+2)


可以简化到

a=[1,2,3]
b=[i+2 for i in a]


(2)字典

d={'today':20,'tomorrow':31}
d['today']  #值为20


其他创建字典的方法:

dict([['today',20],['tomorrow',31]])
dict.fromkeys(['today',tomorrow],20)


(3)集合

**注意:1.集合中的元素不重复,而且是无序的

2.不能索引**

创建集合:

s={1,2,2,3} #2会自动去重,得到{1,2,3}
s=set{[1,2,3]}


集合运算:

a=t|s #t和s的并集
b=t&s #交集
c=t-s #差集
d=t^s #对称差集(项在t或s中,但不会同时出现在二者中)


(4)函数式编程

lambda(), map() , reduce(), filter()

01.map():

a=[1,2,3]
b=map(lambda x:x+2,a)
b=list(b)  #结果是[3,4,5]


02.reduce(): map用于逐一遍历,reduce用于递归计算。

reduce(lambda x,y:x*y,range(1,n+1))




相当于:

s=1

for i in range (1,n+1):

s=s*i

filter(): 过滤器,筛选出列表中符合条件的元素。

b=filter(lambda x:x>5 and x<8,range(10))
b=list(b) #结果为[6,7]


2.导入库

(1) import math

math.sin(1)

(2) 起别名

import math as m

m.sin(1)

(3)导入部分函数

from math import exp as e

e(1)

sin(1) #出错,因为没被导入

(4)直接导入库中所以函数

from math import *

exp(1) #容易引起命名冲突

(5)导入future特征维持兼容性

from future import print_funtion

from future import division

8292
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: