1.列表:由字符串创建一个作业评分列表,做增删改查询统计遍历操作。例如,查询第一个3分的下标,统计1分的同学有多少个,3分的同学有多少个等。

 1 >>> ls = list('132231321132')
 2 >>> ls
 3 ['1', '3', '2', '2', '3', '1', '3', '2', '1', '1', '3', '2']
 4 >>> ll=['123456']
 5 >>> ll
 6 ['123456']
 7 #增
 8 >>> ls.append(9)
 9 >>> ls
10 ['1', '3', '2', '2', '3', '1', '3', '2', '1', '1', '3', '2', 9]
11 #改
12 >>> ls.insert(0,'10')
13 >>> ls
14 ['10', '1', '3', '2', '2', '3', '1', '3', '2', '1', '1', '3', '2', 9]
15 #删
16 >>> ls.pop(0)
17 '10'
18 >>> ls
19 ['1', '3', '2', '2', '3', '1', '3', '2', '1', '1', '3', '2', 9]
20 #查
21 >>> ls.index('3')
22 1
23 #统计
24 >>> ls.count('1')
25 4
26 >>> ls.count('3')
27 4
28 >>> 

list

2.字典:建立学生学号成绩字典,做增删改查遍历操作。

 1 #list()+zip()建立字典
 2 >>> dic=dict(zip([1,2,3],['98','100','88']))
 3 >>> dic
 4 {1: '98', 2: '100', 3: '88'}
 5
 6 #增update()
 7 >>> dic2={4:'95'}
 8 >>> dic.update(dic2)
 9 >>> dic
10 {1: '98', 2: '100', 3: '88', 4: '95'}
11
12 #删pop()/del a[k]
13 >>> dic.pop(2)
14 '100'
15 >>> dic
16 {1: '98', 3: '88', 4: '95'}
17 #del
18 >>> dic
19 {1: '120', 3: '88', 4: '95'}
20 >>> del dic[3]
21 >>> dic
22 {1: '120', 4: '95'}
23
24 #改insert()
25 >>> dic[1]='120'
26 >>> dic
27 {1: '120', 3: '88', 4: '95'}
28
29 #查get()
30 >>> dic
31 {1: '98', 3: '88', 4: '95'}
32 >>> dic.get(4)
33 '95'
34 >>> dic.get(5,'没有')
35 '没有'
36 #直接查也可以
37 >>> dic[4]
38 '95'
39
40 # 返回一个list:keys()/values()/items()
41 >>> dic.keys()
42 dict_keys([1, 3, 4])
43 >>> dic.values()
44 dict_values(['98', '88', '95'])
45
46 #将dict中的元素变为元祖items()
47 >>> dic.items()
48 dict_items([(1, '98'), (3, '88'), (4, '95')])

dict

3.列表,元组,字典,集合的遍历。

 1 #list
 2 ls=list('654561')
 3 #set
 4 st={'100','100','98','95','96','96'}
 5 #tuple
 6 tup='a','b',1,st
 7 #('a', 'b', 1, {'98', '96', '100', '95'})
 8 #dict
 9 dic={'a':'blue','b':'red','c':'white'}
10
11 print('遍历list'.center(50,'='))
12 for i in ls:
13     print(i,end=' ')
14 print('\n')
15 print('遍历set'.center(50,'='))
16 for i in st:
17     print(i,end=' ')
18 print('\n')
19 print('遍历tuple'.center(50,'='))
20 for i in tup:
21     print(i,end=' ')
22 print('\n')
23 print('遍历dict'.center(50,'='))
24 for (k,v) in dic.items():
25     print('dict[%s]='%k,v)

组合数据类型遍历

4.总结列表,元组,字典,集合的联系与区别。

属性 列表list 元祖tuple 字典dict             集合set
有序 是 (正向递增/反向递减)
数据可重复 key值唯一
数据可修改
特点

查询速度随内容增加而变慢

占用内存较小

表达固定数据项、函数多返回值、

多变量同步赋值、循环遍历等情况下适用

改&查操作速度快,

不会因key值增加而变慢。

占用内存大,内存浪费多

(利用空间成本换时间)

数据独立性:

能够过滤重复参数

5.英文词频统计实例:待分析字符串,分解提取单词,大小写 txt.lower(),分隔符'.,:;?!-_’,计数字典,排序list.sort(),输出TOP(10)

  1 #待分析字符串,分解提取单词,大小写 txt.lower(),分隔符'.,:;?!-_’,计数字典,排序list.sort(),输出TOP(10)
  2 song='''
  3 Oh woah
  4 Oh woah
  5 Oh woahohhohh
  6
  7 You know you love me, I know you care
  8 You shout whenever, and I'll be there
  9 You want my love, you want my heart
 10 And we will never ever ever be apart
 11 Are we an item? Girl quit playing
 12 We're just friends, what are you saying
 13 Said there's another and look right in my eyes
 14 My first love broke my heart for the first time
 15 And I was like
 16
 17 Baby, baby, baby, oh like
 18 Baby, baby, baby, no like
 19 Baby, baby, baby, oh
 20 I thought you'd always been mine, mine
 21 Baby, baby, baby, oh like
 22 Baby, baby, baby, no like
 23 Baby, baby, baby, oh
 24 I thought you'd always been mine, mine
 25 Oh, Oh
 26
 27 For you, I would have done whatever
 28 And I just can't believe we ain't together
 29 And I wanna play it cool, but I'm losing you
 30 I'll buy you anything, I'll buy you any ring
 31 And I'm in pieces, baby fix me
 32 And you'll shake me till you wake me from this bad dream
 33 I'm going down, down, down, down
 34 And I just can't believe my first love won't be around
 35 And I'm now like
 36
 37 Baby, baby, baby, oh like
 38 Baby, baby, baby, no like
 39 Baby, baby, baby, oh
 40 I thought you'd always been mine, mine
 41 Baby, baby, baby, oh like
 42 Baby, baby, baby, no like
 43 Baby, baby, baby, oh
 44 I thought you'd always been mine, mine
 45
 46 When I was 13 I had my first love
 47 There was nobody that compared to my baby
 48 And nobody came between us or could ever come above
 49 She had me going crazy
 50 Oh I was starstruck
 51 She woke me up daily don't need no starbucks
 52 She made my heart pound
 53 Asking for a beat when I see her in the street
 54 And at school on the playground
 55 But I really wanna see her on the weekend
 56 She knows she got me dazy
 57 Cause she was so amazing
 58 And now my heart is breaking
 59 But I'll just keep on saying
 60
 61 Baby, baby, baby, oh like
 62 Baby, baby, baby, no like
 63 Baby, baby, baby, oh
 64 I thought you'd always been mine, mine
 65 Baby, baby, baby, oh like
 66 Baby, baby, baby, no like
 67 Baby, baby, baby, oh
 68 I thought you'd always been mine, mine
 69 Now I'm all gone
 70 Now I'm all gone
 71 Now I'm all gone
 72 Now I'm all gone
 73 I am gone
 74
 75 '''
 76 #1.全文转为小写
 77 song=song.lower()
 78
 79 #2.去除标点符号
 80 for i in ',.?!\n':
 81     song=song.replace(i,' ')
 82
 83 #3.分解提取单词
 84 words=song.split(' ')#将字符串以' '为依据划分为一个个单词
 85
 86 #expend={'in','and','so','i','ll','is','her','are','a','an'}
 87 #for i in expend:
 88 #    songs=words.replace(i,'*')
 89
 90 #4.做一个空字典计数
 91 dic={}
 92 keys=set(words)#用数组的独立性取出字典的key值
 93 for i in keys:
 94     dic[i]=words.count(i)#dic[i]输出key值
 95
 96 #5.排序
 97 tupleee=list(dic.items())
 98 tupleee.sort(key=lambda x:x[1],reverse=True)
 99
100 #6.输出TOP(10)
101 for i in range(10):
102     print(tupleee[i])

词频统计

转载于:https://www.cnblogs.com/maykok/p/7563465.html

python-组合数据类型相关推荐

  1. Python组合数据类型之序列类型

    单元概述 主要解决问题:让程序更好地处理一组数据 三类重要组合数据类型:集合类型.序列类型和字典类型 学完本章,我们能够在头脑中建立集合.序列和字典的模式来表达对一组数据的表达和处理 1. 定义 序列 ...

  2. Python组合数据类型之集合类型

    单元概述 主要解决问题:让程序更好地处理一组数据 三类重要组合数据类型:集合类型.序列类型和字典类型 学完本章,我们能够在头脑中建立集合.序列和字典的模式来表达对一组数据的表达和处理 1. 定义 集合 ...

  3. python组合数据类型有哪些_Python学习之组合数据类型

    一.概述 计算机不仅仅要对单个变量表示的数据进行处理,还需要对一组数据进行批量处理.如: 给定一组单词{python,data,function,list,loop},计算并输出每个单词的长度. 给定 ...

  4. python组合数据类型实验_实验七 组合数据类型

    安徽工程大学 Python程序设计实验报告 班级物流192   姓名 徐敏 学号 3190505232 成绩 _____ 日期 2020.5.28  指导老师 修宇 实验七 组合数据类型 [实验目的] ...

  5. Python组合数据类型:字典dictionary

    一.组合数据类型container objects 组合数据类型container objects:能够表示多个数据的类型 集合类型:集合类型是元素集合,元素无序不重不变 序列类型:序列类型是元素向量 ...

  6. Python组合数据类型:序列sequence,列表list、元组tuple

    一.组合数据类型container objects 组合数据类型container objects:能够表示多个数据的类型 集合类型:集合类型是一个元素集合,元素无序不重不变 序列类型:序列类型是一个 ...

  7. Python组合数据类型:容器类型总览,(不)可变数据类型immutable、(不)可迭代对象iterable、迭代器iterator、生成器generator、语法糖

    一.组合数据类型container objects 组合数据类型container objects:能够表示多个数据的类型 集合类型:集合类型是一个元素集合,元素无序不重不变 序列类型:序列类型是一个 ...

  8. python组合数据类型实验_Python程序设计实验报告七:组合数据类型

    安徽工程大学 Python程序设计 实验报告 班级  物流192   姓名刘晨晨学号3190505214 日期   2020.5.27    指导老师修宇 [实验名称]实验七 组合数据类型 [实验目的 ...

  9. 第四章 Python组合数据类型

    第四章 组合数据类型 4.1 列表 4.1.1 列表的表达 序列类型:内部元素有位置关系,能通过位置序号访问其中元素 列表是一个可以使用多种类型元素,支持元素的增.删.查.改操作的序列类型 ls = ...

  10. Python—— 组合数据类型(模块5: jieba库的使用)(实例:基本统计值计算文本词频统计)

    前言 本篇主要介绍组合数据类型,以基本统计值计算为例,介绍函数使用和各种类型定义.以文本词频统计为例,介绍Jieba库的使用. (从本篇开始,出现的一些库中函数介绍以及部分简单代码都将以图片形式呈现) ...

最新文章

  1. PL-VINS:实时基于点线的单目惯导SLAM系统
  2. 润乾V5手机报表说明文档
  3. 参数命名_北汽极狐ARCFOX 旗下首款车参数曝光,或命名MARK5
  4. ORA-00910: specified length too long for its datatype
  5. mysql编译方式安装_mysql编译方式安装
  6. swift - xcode10 - 点击事件交互BUG - (手势和button的addTarget方法)
  7. hdu 2188悼念512汶川大地震遇难同胞——选拔志愿者(博弈)
  8. linux 查看libusb版本,linux / libusb获取usb设备路径
  9. Spring Boot 返回XML
  10. 数论 —— 毕达哥拉斯三元组
  11. Spring框架 简述
  12. Java输入年度和月份判断有多少天
  13. 不足 20 行 Python 代码,高效实现 k-means 均值聚类算法!
  14. obs计算机丢失,安装obs时提醒没法启动此程序,因为计算机丢失
  15. 华硕Z77系列主板怎么进行超频设置?
  16. 台式计算机开关电源原理图,计算机开关电源基本结构及原理
  17. 通俗的解释机器学习的预测原理
  18. IT运维审计系统是什么?有推荐的吗?
  19. 计算机常用工具软件实训总结报告,计算机常用工具软件实训报告
  20. 6-1 哈夫曼树及哈夫曼编码分数

热门文章

  1. PHP的OB缓存(输出缓存)
  2. (转)运维角度浅谈MySQL数据库优化
  3. 理解SQL SERVER中的分区表(转)
  4. 2014-07-24 .NET实现微信公众号的消息回复与自定义菜单
  5. URAL 1004 Sightseeing trip
  6. 大数据_Flink_数据处理_流式数据源测试---Flink工作笔记0010
  7. leetcode437. 路径总和 III
  8. Linux使用evhttp实现一个简单的HttpServer
  9. java hdu2011多项式求和
  10. 【转贴】gdb中的信号(signal)相关调试技巧