导图社区 Python组合数据类型
本导图主要介绍了Python中的序列类型及操作、字典类型及操作、jieba库的使用,导图内容来源于中国大学MOOC—Python语言程序设计(北京理工大学),配合课程使用效果更好。
编辑于2021-06-18 16:15:09本导图为作者备考中级经济师(人力资源)过程中形成的学习笔记,已取得人力资源管理师证。中级经济专业技术资格考试设《经济基础知识》和《专业知识和实务》两个科目,题型均为客观题。《专业知识和实务》为专业科目,分为工商管理、农业经济、财政税收、金融、保险、运输经济、人力资源管理、旅游经济、建筑与房地产经济、知识产权10个专业类别;《经济基础知识》为公共科目,由经济学基础、财政、货币与金融、法律、会计、统计六个部分组成。
本导图为中级经济师考试科目《经济基础知识》的统计部分,主要包括统计与数据科学、描述统计、抽样统计、回归分析、时间序列分析。
本导图为中级经济师考试科目《经济基础知识》的货币与金融部分,主要包括货币供求与货币均衡、中央银行与货币政策、商业银行与金融市场、金融风险与金融监管、对外金融关系与政策。
社区模板帮助中心,点此进入>>
本导图为作者备考中级经济师(人力资源)过程中形成的学习笔记,已取得人力资源管理师证。中级经济专业技术资格考试设《经济基础知识》和《专业知识和实务》两个科目,题型均为客观题。《专业知识和实务》为专业科目,分为工商管理、农业经济、财政税收、金融、保险、运输经济、人力资源管理、旅游经济、建筑与房地产经济、知识产权10个专业类别;《经济基础知识》为公共科目,由经济学基础、财政、货币与金融、法律、会计、统计六个部分组成。
本导图为中级经济师考试科目《经济基础知识》的统计部分,主要包括统计与数据科学、描述统计、抽样统计、回归分析、时间序列分析。
本导图为中级经济师考试科目《经济基础知识》的货币与金融部分,主要包括货币供求与货币均衡、中央银行与货币政策、商业银行与金融市场、金融风险与金融监管、对外金融关系与政策。
组合数据类型
本导图主要介绍了Python中的集合类型及操作、序列类型及操作、字典类型及操作、jieba库的使用,导图内容来源于中国大学MOOC—Python语言程序设计(北京理工大学),配合课程使用效果更好。
集合类型及操作
集合类型定义
元素之间无序,不存在相同元素 元素不可更改 用{}表示,元素间用逗号分隔 使用{}或set()建立集合,空集合只能使用set()生成,因为{}表示空的字典类型 建立空集合必须使用set()
集合操作符
S|T:并
S和T中的所有元素
S-T:差
在S中但不在T中的元素
S&T:交
既在S中又在T中的元素
S^T:补
S和T中的不同元素
S<=T或S<T:子集
S是T的子集则为真,反之为假
S>=T或S>T:包含
S包含T则为真,反之则为假
集合处理方法
S.add(x)
如果x不在S中,将x增加到S
S.discard(x)
移除S中的x元素,如果x不在集合S中,不报错
S.remove(x)
移除S中的元素x,如果x不在集合S中,产生KeyError异常
S.clear()
移除S中所有元素
S,pop()
随机返回S的一个元素,更新S,若S为空产生KeyError异常
S.coyp()
返回集合S的一个副本
len(S)
返回集合S的元素个数
x in S
元素x在S中返回True,否则返回False
x not in S
元素x不在S中返回True,反之返回False
set(x)
将其他类型的变量x转变为集合类型
集合类型应用场景
包含关系比较
数据去重
序列类型及操作
序列类型定义
序列是一维元素向量,元素类型可以不同 元素间由序号引导,通过下标访问序列的特定元素 序列是一个基类类型,包括:字符串类型、元组类型、列表类型 序号定义正反向皆可
序列处理函数及方法
x in s
x是序列s的元素,返回TRUE,否则返回False
x not in s
x是序列s的元素,返回False,否则返回True
s+t
连接两个序列s和t
s*n或n*s
将序列s复制n次
s[i]
返回s中的第i个元素
s[i:j:k]
切片,返回序列s中第i到j以k为步长的元素子序列。 s[::-1]:将s序列逆向输出
通用操作
len(s)
序列s的元素个数 ls=[“python",123,".io"] len(ls) >>>3
min(s)
序列s的最小元素
max(s)
序列s的最大元素 s="python123.io" max(s) >>>'y'
s.index(x)或s.index(x,i,j)
序列s从i到j位置中第一次出现元素x的位置
s.count(x)
序列s中出现x的总次数
元组类型及操作
元组是序列类型的一种扩展
元组类型定义
元组是一种序列类型 一旦创建就不能被修改 使用()或tuple()创建,元素间用逗号分隔 可以使用或不使用()
元组继承了序列类型的全部通用操作
列表类型及操作
列表是序列类型的一种扩展
列表类型定义
列表式一种序列,创建后可随意修改 使用[]或list()创建,元素间用逗号分隔 列表中各元素类型可以不同,无长度限制
列表类型操作函数
ls[i]=x
替换列表ls第i元素为x
ls[i:j:k]=lt
用列表lt替换ls切片对应元素子列表 ls=["cat","dog","tiger",1024] ls[1:2]=[1,2,3,4] >>>['cat',1,2,3,4,'tiger',1024] del ls[::3] >>>[1,2,4,'tiger'] ls*2 [1,2,4,'tiger',1,2,4,'tiger']
del ls[i]
删除列表ls中第i元素
del ls[i:j:k]
删除切片元素
ls+=lt
将列表lt元素增加到ls中
ls*=n
将ls列表元素重复n次
ls.append(x)
列表最后增加元素x
ls.clear()
删除列表中的所有元素
ls.copy()
将ls中的所有元素赋予新列表
ls.insert(i,x)
在第i位置插入元素x
ls.pop(i)
取出并删除第i位置元素
ls.remove(x)
删除列表中的第一个x元素
ls.reverse()
列表元素反转
序列类型应用场景
数据表示
元组
列表
元素遍历
数据保护:元组
基本统计值计算
获取不定长度的输入
def getNum(): #获取用户不定长度的输入 nums = [] iNumStr = input("请输入数字(回车退出): ") while iNumStr != "": nums.append(eval(iNumStr)) iNumStr = input("请输入数字(回车退出): ") return nums
计算平均值
def mean(numbers): #计算平均值 s = 0.0 for num in numbers: s = s + num return s / len(numbers)
计算中位数
def median(numbers): #计算中位数 sorted(numbers) size = len(numbers) if size % 2 == 0: med = (numbers[size//2-1] + numbers[size//2])/2 else: med = numbers[size//2] return med
字典类型及操作
字典类型定义
序列VS字典: 序列类型由0......N整数作为数据的默认索引, 字典类型则由用户为数据定义索引 字典类型定义: 采用{}和dict()创建,键值对用冒号表示,键值对之间用逗号分隔 {键1:值1,键2:值2,......,键n:值n} 
字典处理函数及方法
del d[k]
删除字典d中键k对应的数据值
k in d
k键在字典d中,返回TRUE,否则False
d.keys()
返回字典d中所有的键
d.values()
返回字典中所有的值
d.items()
返回字典中所有的键值对 
d.get(k,<default>)
键k存在,返回对应值; 不存在,返回default值。
d.pop(k,<default>)
键k存在,取出对应值; 不存在,返回default值。
d.popitem()
从字典中随机取出一个键值对,以元组形式返回
d.clear()
清空字典d
len(d)
返回字典d中键值对的个数 >>> d={"中国":"北京","美国":"华盛顿","法国":"巴黎"} >>> d.get("中国","无") >>> d.get("中国","无") '北京' >>> d.get("俄罗斯","无") '无' >>> d.popitem() ('法国', '巴黎') >>> d {'中国': '北京', '美国': '华盛顿'}
字典类型应用场景
统计数据出现的次数
数据是键,次数是值
元素遍历
jieba库的使用
jieba库基本介绍
根据字与字之间的关联程度,将中文语句拆为各个词语
jieba库的安装
pip install jieba
三种模式
jieba.lcut(s)
精确模式,返回一个列表的分词结果 
jieba.lcut(s,cut_all=True)
全模式,返回一个列表的分词结果,存在冗余 
jieba.lcut_for_search(s)
搜索引擎模式,返回一个列表的分词结果,存在冗余 
向字典增加新词
jieba.add_word(w) >>>jieba.add_word("蟒蛇语言")
文本词频统计
英文文本

中文文本