python如何进行批量查找替换并且分类

查看:235
本文介绍了python如何进行批量查找替换并且分类的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

{
"Data":[
{
"title":"我要扫地",
"id":"1"
},
{
"title":"他要跳楼了",
"id":"2"
},
{
"title":"跑步是有好处的",
"id":"3"
}
]
}

数据大概几千条
如何自动查找特定关键词,并且写入分类(如图所示)
比如
卫生 = '扫地,拖地,吸尘'
锻炼 = '跑步,慢跑,俯卧撑'
.....
.......

解决方案

只有挨个遍历了,几千条数据也不算多,类似处理方法如下:

# python 2.7 utf-8
from copy import deepcopy

dic_category = {
    u'卫生': [u'扫地', u'拖地', u'吸尘'],
    u'锻炼': [u'跑步', u'慢跑', u'俯卧撑'],
    u'自杀': [u'跳楼']
}

data = {
    "Data": [
        {
            "title": u"我要扫地",
            "id": "1"
        },
        {
            "title": u"他要跳楼了",
            "id": "2"
        },
        {
            "title": u"跑步是有好处的",
            "id": "3"
        },
        {
            "title": u"多做俯卧撑",
            "id": "4"
        }
    ]
}

processed_data = deepcopy(data) # 若考虑内存占用率,直接处理data

for dic_ele in processed_data['Data']:
    dic_ele['category'] = None
    for str_category, tup_keys in dic_category.iteritems():
        if dic_ele['category']:  # 不考虑一个title有多种类别的情况
            break
        for str_key in tup_keys:
            if str_key in dic_ele['title']:
                dic_ele['category'] = str_category
                break

# display
for dic_ele in processed_data['Data']:
    print '------------'
    print 'id:', dic_ele['id']
    print 'title:', dic_ele['title'].encode('utf-8')
    print 'category:', dic_ele['category'].encode('utf-8')

这篇关于python如何进行批量查找替换并且分类的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆