[python]实现单机版一行wordcount
用过spark,对wordcount这个演示程序记忆犹新,于是想试着实现一个简单的wordcount。又因为在学习函数式编程,希望可以把数据看成一个整体,在现有的函数上进行操作。于是就有了这一行代码。
这行代码包括对单词的粗略处理,包括全部转化为小写,去除标点符号等。接下来用filter去掉了空行,最后使用Counter进行计数,实在是很方便快捷啊。
import re
from collections import Counter input = """As we know, the NTU Final PK contest usually tends to be pretty hard. Many teams got frustrated when
participating NTU Final PK contest. So I decide to make the first problem as "easy" as possible. But how
to know how easy is a problem? To make our life easier, we just consider how easy is a string.""" ret = Counter(filter(lambda x: x != '',re.subn('\W', ' ',input.lower())[0].split(' '))).items() for i in ret:
print i[0], i[1]
[python]实现单机版一行wordcount的更多相关文章
- python在mapreduce运行Wordcount程序
		
首先脚本文件: mapper.py: #!/usr/bin/env python import sys for line in sys.stdin: line = line.strip() words ...
 - Python初次实现MapReduce——WordCount
		
前言 Hadoop 本身是用 Java 开发的,所以之前的MapReduce代码小练都是由Java代码编写,但是通过Hadoop Streaming,我们可以使用任意语言来编写程序,让Hadoop 运 ...
 - 利用python操作mrjob实例---wordcount
		
网上利用java实现mr操作实例相对较多,现将python实现mr操作实例---Wordcount分享如下: 在操作前,需要作如下准备: 1.确保linux系统里安装有python3.5,pyt ...
 - Python黑魔法,一行实现并行化
		
Python 在程序并行化方面多少有些声名狼藉.撇开技术上的问题,例如线程的实现和 GIL,我觉得错误的教学指导才是主要问题.常见的经典 Python 多线程.多进程教程多显得偏“重”.而且往往隔靴搔 ...
 - python怎样在一行中捕获多个异常
		
所属网站分类: python基础 > 异常处理 作者:浮沉 链接:http://www.pythonheidong.com/blog/article/71/ 来源:python黑洞网,专注pyt ...
 - python在指定一行的下一行插入文本
		
给定一个程序,程序中有许多函数,比如,funcA,funcB,现在,如何在生成的函数中插入一个logger()语句? 这里用一个solidity程序做例子 pragma solidity ^0.4.0 ...
 - python练习:一行搞定-统计一句话中每个单词出现的个数
		
一行搞定-统计一句话中每个单词出现的个数 >>> s'i am a boy a bood boy a bad boy' 方式一:>>> dict([(i,s.spl ...
 - 简单机器学习人脸识别工具face-recognition   python小试,一行代码实现人脸识别
		
摘要: 1行代码实现人脸识别,1. 首先你需要提供一个文件夹,里面是所有你希望系统认识的人的图片.其中每个人一张图片,图片以人的名字命名.2. 接下来,你需要准备另一个文件夹,里面是你要识别的图片.3 ...
 - python删除某一行
		
整理了网络上的一些方法,一般有两种方法:第一种:是先把文件读入内存,在内存中修改后再写入源文件. 例子:将内容包含“123”的所有行删去: with open('C:/Users/lai/Deskto ...
 
随机推荐
- php防止表单重复提交
			
解决方案一:引入cookie机制来解决 提交页面代码如下a.php代码如下: <form id="form1" name="form1" method=& ...
 - 作为一个web开发人员,哪些技术细节是在发布站点前你需要考虑到的
			
前日在cnblogs上看到一遍文章<每个程序员都必读的12篇文章>,其中大多数是E文的. 先译其中一篇web相关的”每个程序员必知之WEB开发”. 原文: http://programme ...
 - Couchbase
			
Couchbase介绍,更好的Cache系统 在移动互联网时代,我们面对的是更多的客户端,更低的请求延迟,这当然需要对数据做大量的 Cache 以提高读写速度. 术语 节点:指集群里的一台服务器. 现 ...
 - C语言资源
			
0.C自带库/函数在线文档 http://www.acm.uiuc.edu/webmonkeys/book/c_guide/ 1.so文件制作和使用 http://blog.csdn.net/love ...
 - 鸟哥的linux私房菜学习记录之bash
			
当你对计算机输入一个指令时,bash会将指令传送给核心kernel,核心再去调用相关的程序,启动硬件. 如果直接让用户操作操作系统,可能会造成系统的崩溃,所以操作系统通过应用程序来让用户操作系统即壳程 ...
 - 161107、spring异步调用,完美解决!
			
项目中,用户抢单,下单需要向对方推送消息,但是加上推送就会造成抢单和下单性能降低,反应变慢,因为抢单下单动作跟推送部分是同步的,现在想改成异步推送. 在Java应用中,绝大多数情况下都是通过同步的方式 ...
 - laravel5.0升级到laravel5.1
			
1.修改composer.json.将其中的"laravel/framework": "5.0.*"修改为"laravel/framework&quo ...
 - Best Time to Buy and Sell Stock
			
class Solution { public: int maxProfit(vector<int>& prices) { //eg: 5 6 2 3 1 4: // 记录i之前最 ...
 - ASP+Access UTF-8 网页乱码问题解决办法
			
用ACCESS数据库和ASP做网站时用UTF-8编码有时会出现乱码,再者网页出错或者刷新页面后就是乱码,如果数据库取值乱码在开头加上<%@LANGUAGE="VBSCRIPT" ...
 - 用excel2010 制作复合图表
			
用excel2010制作双轴柱线复合图表就是要用excel2010做一个这样的图表: