Python中统计单词出现的次数,包含(PySpark方法)

news/2024/11/28 10:54:26/
'''
思路:
定义一个函数,使用open函数,将文本内容打开。
定义一个空字典和空列表,进行循环及条件判断操作
'''
def count_word(file_path):dict_data = {}			#定义一个空字典f = open(file_path,"r",encoding="UTF-8")list_data = f.read()list_data = list_data.split()		#默认是空格为分隔符for i in list_data:if i in dict_data:dict_data[i] += 1else:dict_data[i] = 1f.close()while True:word = input("please input your word(input 'q' or 'Q'):")if word == 'Q' or word == 'q':print("Bye~")breakif dict_data.get(word) == None:print(f"{word}'s count is 0")breakelse:print(f"{word}'s count is {dict_data.get(word)}")count_word("C:/1.txt")

效果图:

在这里插入图片描述

利用PySpark第三方库,进行统计(人机交互暂未编写):

# 1.构建执行环境入口对象
from pyspark import SparkContext,SparkConf
import os 
os.environ['PYSPARK_PYTHON'] = "python.exe文件位置"
conf = SparkConf().setMaster("local[*]").setAppName("test_spark")
sc = SparkContext(conf = conf)# 2.读取数据文件
rdd = sc.textFile("C:/1.txt")# 3.获取全部单词,默认以空格为分隔符
word_rdd = rdd.flatMap(lambda x:x.split(" "))# 4.将单词转换为二元元祖
word_withone_add = word_rdd.map(lambda word:(word,1))# 5.分组求和
result_add = word_withone_add.reduceByKey(lambda a,b:a+b)# 6.打印出结果
print(result_add.collect())

http://www.ppmy.cn/news/1121411.html

相关文章

iOS添加Mapbox地图库

配置凭据 注册并导航到Account页面。你将需要: 公共访问令牌: 从帐户的tokens页面,你可以复制默认的公共令牌或单击"create a token"按钮来创建新的公共令牌。 带有Downloads:Read范围的秘密访问令牌: 从你帐户的t…

【操作系统笔记五】内存布局内存映射

虚拟内存布局 虚拟地址空间大小: 32位虚拟地址空间 [0 ~ 2^32 - 1] 总共4GB64位虚拟地址空间 [0 ~ 2^64 - 1] 总共16 777 216TB 不管是运行在用户态还是内核态,都需要使用虚拟地址,这是因为计算机硬件要求的,CPU要经过地址转换得…

为什么要用vite,用vite的原因是什么

为什么选 Vite | Vite 官方中文文档 (vitejs.dev) 在很久以前,javascript是没有模块化的,就是一个整体,所以为了将文件分成很小的模块文件,才出现“打包”这个概念之前的拆分工具像webpack,rollup等,因为项目越来越大…

1795_ChibiOS网络书籍阅读_实时系统的一些概念

全部学习汇总: GreyZhang/g_ChibiOS: I found a new RTOS called ChibiOS and it seems interesting! (github.com) 不同的OS在介绍自己的机理的时候都有自己的模型或者抽象概念,ChibiOS也不例外。这里的几个概念需要做一个基本的理解: 1. 进…

分类预测 | MATLAB实现WOA-CNN-BiGRU-Attention数据分类预测(SE注意力机制)

分类预测 | MATLAB实现WOA-CNN-BiGRU-Attention数据分类预测(SE注意力机制) 目录 分类预测 | MATLAB实现WOA-CNN-BiGRU-Attention数据分类预测(SE注意力机制)分类效果基本描述模型描述程序设计参考资料 分类效果 基本描述 1.MATLA…

解决方案 | 如何构建市政综合管廊安全运行监测系统?

如何构建市政综合管廊安全运行监测系统?WITBEE万宾城市生命线智能监测仪器,5年免维护设计,集成10多项结构与气体健康监测指标,毫秒级快速响应,时刻感知综合管廊运行态势

开源媒体浏览器Kyoo

什么是 Kyoo ? Kyoo 是一款开源媒体浏览器,可让您流式传输电影、电视节目或动漫。它是 Plex、Emby 或 Jellyfin 的替代品。Kyoo 是从头开始创建的,它不是一个分叉。一切都将永远是免费和开源的。 软件特性: 管理您的电影、电视剧…

2309C++nlohmann的json数格示例

单 出向量 啊{"aa.txt"};数格 d;串 加一(串&k){静 串 o;动 ad.查找(k);如(ad.尾())中 o;串 bd[k].转储();中 b;}空 切换(串&e){打印(e);串 n至冲(e);d数格::解析(n);静 向量<串>们{"name","description","homepage"};向…