Python 文本处理的应用
最近根据公司运营部需求要对mongo数据库中的相关信息进行统计,本人一般喜欢将数据库服务器中相关的数据导出来(PS:其一由于Mongo为Nosql,在涉及关联表时不好处理,其二是因为虽然为测试环境,但是为了不影响性能的话我还是习惯将数据导出,但是缺点就是自己测试机压力比较大,不过针对于目前数据情况还是可以应付的)。
根据createDate时间段导出的数据格式如下(已经经过处理,处理过程略过)
a : 5 , b: 111 , c: 5
a : 1 , b: 222 , c: 3
a : 2 , b: 333 , c: 4
这些形式的文本信息都以行的形式存储在文本中,其中以,为分隔的每一列为在mongo数据库中根据条件提取的信息。其中a为活动id,b为参加活动的用户id,c为参加活动得分情况。
由于要统计不同活动参加的人数,以及对应活动的得分情况,所以要对其中的每个键进行判断,统计的方法很简单,此次主要记录下本人处理判断字段的方法:
通过type()可以判断每一行为一个str,针对这样形式的str,希望能够转换成dict来处理,本人没有试过,我是通过re模块中的split通过‘,’将其切片成list作为列表来处理,效果也是一样的,由于判断的过程中是以活动id为条件的,这样的话只能再通过二次切片,以‘:’为分隔符继续处理后再取出其中的值进行判断。
整个统计实现的过程中用到文本操作,字符串处理,循环语句。实现起来很简单。
以前处理文本都是用shell来实现,但是由于本人shell是半路出家,很多工具不熟悉的话根本没法想到用什么样的方法,而且个人目前感觉shell细节化的处理不够细腻,(PS:也是因为本人用的不多,其实perl的字符处理功能十分强大),所以这次就适当的将自己最近刚看的python应用起来进行锻炼下。
实现的代码比较简单,也不好意思贴出,希望在一点一滴中继续前进,与君共勉!!!!
Python 文本处理的应用的更多相关文章
- 算是休息了这么长时间吧!准备学习下python文本处理了,哪位大大有好书推荐的说下!
算是休息了这么长时间吧!准备学习下python文本处理了,哪位大大有好书推荐的说下!
- Python 文本解析器
Python 文本解析器 一.课程介绍 本课程讲解一个使用 Python 来解析纯文本生成一个 HTML 页面的小程序. 二.相关技术 Python:一种面向对象.解释型计算机程序设计语言,用它可以做 ...
- python 文本分类
python 文本分类 pyhton 机器学习 待续...
- python文本 maketrans和translate
python文本 maketrans和translate 场景: 过滤字符串的某些字符,我们从例子出发 >>> tb=str.maketrans ('abc','123') & ...
- python文本 字符串逐字符反转以及逐单词反转
python文本 字符串逐字符反转以及逐单词反转 场景: 字符串逐字符反转以及逐单词反转 首先来看字符串逐字符反转,由于python提供了非常有用的切片,所以只需要一句就可以搞定了 >>& ...
- python文本 拼接或合并字符串
python文本 拼接.合并字符串 场景: 拼接.合并字符串 在这个场景中,我们首先想到的当然是使用+或者+=将两个字符串连接起来 >>> a='a' >>> ...
- python文本 去掉字符串前后空格
python文本 去掉字符串前后空格 场景: 去掉字符串前后空格 可以使用strip,lstrip,rstrip方法 >>> a="abc".center (30 ...
- python文本 判断对象里面是否是类字符串
python文本 判断对象里面是否是类字符串 场景: 判断对象里面是否是类字符串 一般立刻会想到使用type()来实现 >>> def isExactlyAString(obj): ...
- python文本 单独处理每个字符的方法汇总
python文本 单独处理字符串每个字符的方法汇总 场景: 用每次处理一个字符的方式处理字符串 方法: 1.使用list(str) >>> a='abcdefg' >&g ...
- python文本 字符串开头或者结尾匹配
python文本 字符串开头或者结尾匹配 场景: 字符串开头或者结尾匹配,一般是使用在匹配文件类型或者url 一般使用startwith或者endwith >>> a='http:/ ...
随机推荐
- 【Time系列五】个性时钟与秒表升级版
从昨天到现在,一直在研究这个看起来超级简单的时钟.界面非常简洁大方. 虽然是简单,可是这个对齐的问题还是把我整得一塌糊涂.谁叫作者不解释清楚的. 参考:http://bbs.fishc.com/thr ...
- Attribute的理解和认识
1什么是Attribute? 在网上看到这样一段定义 MADN的定义为:公共语言运行时允许添加类似关键字的描述声明,叫做attributes, 它对程序中的元素进行标注,如类型.字段.方法和属性等.A ...
- 博客搬到CSDN了,以后就老实的呆在这儿吧~~
几年前读书的时候就自己在做独立的个人博客网站,重做 + 改版好多次,域名也换了好几个- 163fly.com.godbz.com.zhouz.me ... 都是我曾经用过的域名,都放弃了- 发现到头来 ...
- 安装Mysql,缺少libaio依赖
安装mysql时报如下错误: xxxxx/mysql/bin/mysqld: error : cannot open shared object file: No such file or direc ...
- ONE WIRE
以温度温度传感器为例 由三根线,分别为电源,信号,地线 使用GPIO口对信号线进行读操作 //初始化GPIO PC0端口void dht11_init(){ GPIO_InitTypeDef GPIO ...
- WinForm ListView
今天,我学习了公共控件中的ListView的内容. 首先,在利用ListView布置界面时,有以下三个方面: 1.视图: 在其右上方小箭头点击将视图改为Details:或者右键属 ...
- layer1.8UI
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...
- sudo命令出错 must set be suid
特殊权限 4,2 ,1 4 suid,控制用户执行的文件,以文件所属用户的身份执行.当一个可执行的文件拥有suid时,会将文件拥有者的x位变成s(---s--x--x),这时称为set uid,简写 ...
- Spring.net 学习IOC------属性注入
我们就完成我们的第一个spring.net学习IOC的"hello world!". 1> 我们新建一个C# 的控制台项目名为Spring,然后引入Spring.Core.d ...
- C++实现中缀表达式转前、后缀
#include<iostream> #include<string> #include<stack> using namespace std; bool isIn ...