作业来源:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2753

一.列表,元组,字典,集合分别如何增删改查及遍历。

  • 列表
  1. # 列表的增加
  2. ls =['Hello','Word','JS','OK','Good']
  3. print("原始数据:",ls)
  4. ls.append(12) # 在数组列表后面增加字符串“12”
  5. print("增加后的数组为:",ls)
  6.  
  7. # 列表的删除
  8. del ls[1] # 删除数组的第二个元素,即下标为1的字符串
  9. # ls.pop() # 删除列表最后一个元素
  10. print("删除数组第二个元素后数组为:",ls)
  11.  
  12. # 列表的修改
  13. ls[1] = "修改" # 删除数组的第二个元素,即下标为1的字符串
  14. print("修改数组第二个元素后数组为:",ls)
  15.  
  16. # 列表的查询
  17. ls.index('OK') # 查找“OK”字符串
  18. print("打印字符串“OK”的下标:",ls.index('OK'))
  19.  
  20. # 遍历列表
  21. print("遍历列表:")
  22. for i in ls:
  23. print(i)

结果:

  • 元组
  1. # 元组
  2. YZ = ('元','组','的','元','素','不','修','改')
  3. YZ1 = ('的','!')
  4. YZ2 = YZ + YZ1
  5. del YZ # 删除元组
  6. print("元组的遍历:")
  7. for i in YZ2:
  8. print("\t\t",i)

结果:

  • 字典
  1. # 字典
  2. D = {'这':1,'是':2,'字':3,'典':4,'!':5}
  3. D['这']=11 # 修改键“这”的值
  4. del D['是'] # 删除键“是”
  5. a = D['这'] # 查看键a的值
  6. print("字典\n查看“这”的下标:",a)
  7. # D.clear() # 删除字典中的所有条目
  8. # 遍历输出列表
  9. str(D) # 打印字典
  10. for key in D:
  11. print(key)

结果:

  • 集合
  1. # 集合
  2. aa = {1, 2, 3}
  3. aa.add(4) # 增加
  4. print(aa)
  5.  
  6. aa.remove(2) # 删除
  7. print(aa)
  8. # 遍历打印
  9. for i in aa:
  10. print("\t\t",i)

结果:

二、总结列表,元组,字典,集合的联系与区别。参考以下几个方面:

  • 括号
  • 有序无序
  • 可变不可变
  • 重复不可重复
  • 存储与查找方式
 

列表

元组

字典

集合

名称

list

tuple

dict

set

初始化

[‘0’,’0’,’1’]

(‘0’,’0’,’1’)

{‘0’:1,’0’:2,’1’:3}

{1,2}或set([2,3])

是否有序

有序

有序

无序,自动正序

无序

可否重复

读写性

读写

只读

读写

读写

存储方式

键值对(键不可重复)

键(不可重复)

添加

append

只读

add

d[‘key’]=’value’

三、词频统计

1.下载一长篇小说,存成utf-8编码的文本文件 file

2.通过文件读取字符串 str

3.对文本进行预处理

4.分解提取单词 list

5.单词计数字典 set , dict

6.按词频排序 list.sort(key=lambda),turple

7.排除语法型词汇,代词、冠词、连词等无语义词

    • 自定义停用词表
    • 或用stops.txt

8.输出TOP(20)

9.可视化:词云

排序好的单词列表word保存成csv文件

  1. import pandas as pd
  2. # 打开小说
  3. f = open(r'..\Lin\file_text\Sophies World.txt', 'r', encoding='utf8')
  4. book = f.read()
  5. f.close()
  6.  
  7. book_symbol = ['\n', '\t', '?', '?', '!', "!"," '", "'", ' "', '"', '""', ',', ',', '.', '。','“','”',',']
  8.  
  9. # 删除标点符号
  10. for i in book_symbol:
  11. book = book.replace(i, '')
  12.  
  13. # 把所有的小写 以空格分隔开
  14. book = book.lower().split()
  15.  
  16. # 打开停用词
  17. f = open(r'..\Lin\file_text\stops.txt', 'r', encoding='utf8')
  18. stops = f.read()
  19. f.close()
  20. # 删除多余符号
  21. stop_symbol = [" '", "'", ' "', '"', '\n']
  22. for i in stop_symbol:
  23. stops = stops.replace(i, '')
  24. # 以逗号分隔
  25. stops = stops.split(',')
  26. word_dict = {} # 创建词典
  27.  
  28. # 去掉停用词
  29. word_set = set(book) - set(stops)
  30.  
  31. # 遍历计算词频
  32. for i in word_set:
  33. word_dict[i] = book.count(i)
  34.  
  35. word_count = list(word_dict.items())
  36. word_count.sort(key = lambda x:x[1], reverse = True)
  37. pd.DataFrame(data=word_count[0:20]).to_csv('Sophies World.csv', encoding='utf-8')

结果:

菜鸟学IT之python3关于列表,元组,字典,集合浅认识!的更多相关文章

  1. python3笔记十八:python列表元组字典集合文件操作

    一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle  #数据持久性模块 #封装的方法def OptionData(data,path):    # ...

  2. python中列表 元组 字典 集合的区别

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...

  3. **python中列表 元组 字典 集合

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. 1.列表 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔. 列表的特 ...

  4. python_列表——元组——字典——集合

    列表——元组——字典——集合: 列表: # 一:基本使用# 1.用途:存放多个值 # 定义方式:[]内以逗号为分隔多个元素,列表内元素无类型限制# l=['a','b','c'] #l=list([' ...

  5. Python列表,元组,字典,集合详细操作

    菜鸟学Python第五天 数据类型常用操作及内置方法 列表(list) ======================================基本使用====================== ...

  6. python 中列表 元组 字典 集合的区别

    先看图片解释 (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计过去一周我们买过的东西,把这些东西列出来,就是清单.由于我们买一种东西可能不止一次,所以清单中是允许有重复 ...

  7. python的学习笔记01_4基础数据类型列表 元组 字典 集合 其他其他(for,enumerate,range)

    列表 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: 1.可存放多个值 2.可修改指定索引位置对应的值,可变 3.按照从左到右的顺序定义列表元素,下标从0开始顺序访问 ...

  8. Day 07 数据类型的内置方法[列表,元组,字典,集合]

    数据类型的内置方法 一:列表类型[list] 1.用途:多个爱好,多个名字,多个装备等等 2.定义:[]内以逗号分隔多个元素,可以是任意类型的值 3.存在一个值/多个值:多个值 4.有序or无序:有序 ...

  9. Python数据类型-布尔/数字/字符串/列表/元组/字典/集合

    代码 bol = True # 布尔 num = 100000000; # 数字 str = "fangbei"; # 字符串 str_cn = u"你好,方倍" ...

随机推荐

  1. Jason Wang:记录自己所想所得(第一次作业)

    这个作业属于哪个课程 <课程的链接> 这个作业要求在哪里 <作业要求的链接> 我在这个课程的目标是 学会现代软件工程的思想,运用到实际中去 这个作业在哪个具体方面帮助我实现目标 ...

  2. Python基础(解压序列)

    解压序列: a,b=(1,2) # a,b=[1,2] print(a,b) #输出结果:1 2 #获取第一个值和最后一个值 a,*_,c=(1,2,3,4,5,6,7,8,9) print(a) p ...

  3. okhttputils【 Android 一个改善的okHttp封装库】使用(一)

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 本文使用的OKHttp封装库是张鸿洋(鸿神)写的,因为在项目中一直使用这个库,所以对于一些常用的请求方式都验证过,所以特此整理下. ...

  4. Python捕捉系统信号

    #!/usr/bin/env python # -*- coding: utf-8 -*- import signal import sys """ Python捕捉中断 ...

  5. element-ui 动态换肤

    1.在安装好 element-ui@2.x 以后,首先安装sass-loader npm i sass-loader node-sass -D 2.安装 element-theme npm i ele ...

  6. 内核mailbox

    只罗列增加取走消息: static int add_to_rbuf(struct mbox_chan *chan, void *mssg) { int idx; unsigned long flags ...

  7. 前端神器-神级代码编辑软件Sublime Text下载、使用教程、插件推荐说明、全套快捷键

    Sublime Text 是一个代码编辑器,也是HTML和散文先进的文本编辑器.Sublime Text是由程序员Jon Skinner于2008年1月份所开发出来,它最初被设计为一个具有丰富扩展功能 ...

  8. 【经典案例】Python详解设计模式:策略模式

    完成一项任务往往有多种方式,我们将其称之为策略. 比如,超市做活动,如果你的购物积分满1000,就可以按兑换现金抵用券10元,如果购买同一商品满10件,就可以打9折,如果如果购买的金额超过500,就可 ...

  9. 从零开始学安全(四十)●上传文件MIME类型绕过漏洞防御

    MIME检测原理 服务端MIME类型检测是通过检查http包的Content-Type字段中的值来判断上传文件是否合法的. php示例代码: if($_FILES['userfile']['type' ...

  10. SpringBoot 2.0 更优雅的配置注入

    application.properties jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://127.0.0.1:33 ...