`
qindongliang1922
  • 浏览: 2188434 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7265517b-f87e-3137-b62c-5c6e30e26109
证道Lucene4
浏览量:117659
097be4a0-491e-39c0-89ff-3456fadf8262
证道Hadoop
浏览量:126068
41c37529-f6d8-32e4-8563-3b42b2712a50
证道shell编程
浏览量:60013
43832365-bc15-3f5d-b3cd-c9161722a70c
ELK修真
浏览量:71397
社区版块
存档分类
最新评论

Python处理数据一个小例子

阅读更多

最近用python(3.2的版本)写了根据特定规则,处理数据的一个小程序,用到了一些python常用的基础知识,在此总结一下:

1,python读文件
2,python写文件
3,python的流程控制
4,python的for循环
5,python的集合,或字符串里判断是否存在某个元素
6,python的逻辑或,逻辑与
7,python的正则过滤
8,python的字符串忽略空格,和以某个字符串开头和按某个字符拆分成list

python的打开文件的模式:
关于open 模式:

w     以写方式打开,
a     以追加模式打开 (从 EOF 开始, 必要时创建新文件)
r+     以读写模式打开
w+     以读写模式打开 (参见 w )
a+     以读写模式打开 (参见 a )
rb     以二进制读模式打开
wb     以二进制写模式打开 (参见 w )
ab     以二进制追加模式打开 (参见 a )
rb+    以二进制读写模式打开 (参见 r+ )
wb+    以二进制读写模式打开 (参见 w+ )
ab+    以二进制读写模式打开 (参见 a+ )

处理代码如下:


def showtxt(path,outpathname,detailpath):

    greenpath=r"C:\\Users\\qindongliang\\Desktop\\tnstxt\\green.txt";
    redpath=r"C:\\Users\\qindongliang\\Desktop\\tnstxt\\red.txt";
    redset=listtxt(redpath)
    greenset=listtxt(greenpath)
    print("红色词数量: ",len(redset))
    print("绿色词数量: ",len(greenset))
    #符合1条件的内容写入
    f1=open(r"C:\Users\qindongliang\Desktop\tnstxt\result\\"+detailpath+"\\1.txt",encoding="UTF-8",mode="a+")
    #符合2条件的内容写入
    f2=open(r"C:\Users\qindongliang\Desktop\tnstxt\result\\"+detailpath+"\\2.txt",encoding="UTF-8",mode="a+")
    #符合3条件的内容写入
    f3=open(r"C:\Users\qindongliang\Desktop\tnstxt\result\\"+detailpath+"\\3.txt",encoding="UTF-8",mode="a+")
    #符合4条件的内容写入
    f4=open(r"C:\Users\qindongliang\Desktop\tnstxt\result\\"+detailpath+"\\4.txt",encoding="UTF-8",mode="a+")



    delcount=1;
    f=open(path,encoding="UTF-8",mode="r+")
    fnew=open(outpathname,encoding="UTF-8",mode="a+")
    flog=open(outpathname+".log",encoding="UTF-8",mode="a+")
    #count=1;
    for line in f:
        list=line.strip().split("\t")
        line=line.strip()
        catalogid=list[0]
        score=list[1]
        keyword=clear(list[4].strip())
        if keyword in redset:
            if catalogid.startswith("018022") or catalogid.startswith("018035") or catalogid.startswith("014023003") :
                f1.write(line+"\n")#符合1条件写入
                fnew.write(line+"\n")#符合1条件写入
            else:
                flog.write(line+"   不符合条件1 "+"\n")
                delcount=delcount+1

        if keyword in greenset:
            if not (catalogid.startswith("018022") or catalogid.startswith("018035") or catalogid.startswith("014023003")) :
                fnew.write(line+"\n")
            else:
                f2.write(line+"\n")
                flog.write(line+"   不符合条件2"+"\n")
                delcount=delcount+1


        flist=formatStrList(keyword)
        if "sexy" in flist or "sex" in flist:
            if catalogid.startswith("018022") or catalogid.startswith("018035") or catalogid.startswith("014023003") :
                f3.write(line+"\n")
                fnew.write(line+"\n")
            else:
                flog.write(line+"  不符合条件3"+"\n")
                delcount=delcount+1

       #if (keyword.find("underwear")!=-1) & keyword.find("sexy")==-1 & keyword.find("sex")==-1:
        if "underwear" in flist and "sexy" not in flist and "sex" not  in flist:
            if catalogid.startswith("014032")  :
                f4.write(line+"\n")
                fnew.write(line+"\n")
            else:
                flog.write(line+"  不符合条件4"+"\n")
                delcount=delcount+1

        #print(list[0],"  ",list[1],"  ",list[4])
        #print()



    flog.write("删除总数目: "+str(delcount))
    f.close()
    f1.close()
    f2.close()
    f3.close()
    f4.close()
    fnew.close()
    flog.close()

import re
def clear(str):
    str=re.sub("[\"\"\'\'+]","",str)
    return str


def formatStrList(keyword):
    list=keyword.split(" ")
    for item in list:
        item.strip();
    return  list




def listtxt(path):
     f=open(path,encoding="UTF-8")
     s=set()
     for line in f:
         s.add(line.strip())
     f.close()
     return s

path1=r"C:\\Users\\qindongliang\\Desktop\\tnstxt\\highfrequency.txt"
pathout1=r"C:\\Users\\qindongliang\\Desktop\\tnstxt\\detail\\a_highfrequency.txt"
detail1path="highfrequency"
path2=r"C:\\Users\\qindongliang\\Desktop\\tnstxt\\highfrequency_d1.txt"
pathout2=r"C:\\Users\\qindongliang\\Desktop\\tnstxt\\detail\\b_highfrequency_d1.txt"
detail2path="highfrequency_d1"

#showtxt(path1,pathout1,detail1path)

showtxt(path2,pathout2,detail2path)







0
0
分享到:
评论

相关推荐

    python 100个小例子

    总的来说,"Python 100个小例子"是一个全面的实践资源,它涵盖了Python在大数据处理和爬虫领域的核心知识点,同时也不忘巩固基础。通过逐个学习并动手实践这些小例子,你将能够逐步提升Python编程技能,无论你是新手...

    python核心编程源码, python练习的数十个小例子

    "Python核心编程源码,python练习的数十个小例子"这个资源集合是针对Python学习者的一个宝贵资料,无论你是初学者还是经验丰富的开发者,都可以通过这些实例来巩固和提升你的Python技能。 深入Python书上的源码.rar...

    Python-Bonobo一个用于python35的数据处理库

    Python-Bonobo是一个专为Python 3.5设计的数据处理库,它提供了一套高效、灵活且易于使用的工具,用于数据清洗、转换和分析。在Python的世界里,数据处理是数据分析的核心部分,而Bonobo正是为此目的而诞生的。本文...

    python数据处理.zip

    Python是当今数据科学领域最广泛使用的...对于初学者,这是一个很好的起点,而对于有经验的开发者,这些例子可能提供了一些新的思路和技巧。无论你是哪种情况,都建议深入探索这些库,以提升你的Python数据分析能力。

    Python 文本数据 药品数据挖掘NLP朴素贝叶斯分类 自然语言处理 向量化

    Python 文本数据 药品数据挖掘NLP朴素贝叶斯分类 自然语言处理 向量化 python输入输出函数编写 jupyter notebook numpy pandas sklearn 数据分析 数据挖掘

    《利用python进行数据分析》数据集.rar

    5. **实例应用**:"examples"中的每个CSV文件可能对应书中的一个或多个例子,涵盖数据导入、数据清洗、数据转换、统计分析、可视化等多个方面。通过这些实例,读者可以更深入地理解如何在实际问题中运用Python进行...

    python数据分析实例 python数据分析实例(源码)

    python数据分析实例 python数据分析实例(源码) # python数据分析 ...#### 介绍 python数据可视化例子 ##### 1.SARIMAX模型对公路车流量预测 ##### 2.古诗词云统计 ##### 3.对大数据岗位可视化分析

    一个基于Python写的OPC UA客户端例子

    标题中的“一个基于Python写的OPC UA客户端例子”是指使用Python编程语言实现的OPC统一架构(OPC UA)客户端程序。OPC UA是一种开放的标准,用于设备与应用程序之间的安全、可靠的数据交换,广泛应用于工业自动化...

    书籍源码-《python与数据挖掘》

    随着深度学习的兴起,书中可能也涉及这一领域,介绍如何使用Python的TensorFlow或Keras库构建深度神经网络,进行图像识别、自然语言处理等任务。 八、实战项目 源码中可能包含多个实际案例,如社交媒体数据的情感...

    基于Python的物理实验数据处理系统设计与实现.pdf

    文中提到的系统能够通过图形界面友好地与用户交互,根据实验需要灵活地处理数据,并且将结果输出,方便用户对实验结果进行分析。 5. 系统的可移植性与开源性:Python程序可以非常方便地在不同的操作系统上运行,...

    python版数据结构学习

    通过学习这些结构,可以帮助我们更高效地处理数据。 ##### 1.6 为什么要学习算法 算法是解决问题的一系列步骤,本章节解释了算法在软件开发中的核心作用。了解不同类型的算法及其复杂性分析对于优化代码至关重要。 ...

    python一些好用的例子

    还有可能是一个数据分析的例子,利用pandas库对数据进行清洗、处理和分析;甚至可能包括机器学习的实例,如使用scikit-learn库构建分类或回归模型。 Python在科学计算、数据分析、自动化、Web开发等多个领域都有...

    Python web开发框架Django小例子

    这个“Python web开发框架Django小例子”可能是一个简单的教程,涵盖了上述概念的基本应用,如创建一个“Hello, World!”页面、一个简单的博客应用或用户注册系统。通过实践这些小例子,初学者可以逐步掌握Django的...

    Python数据科学手册_Python数据科学手册_python_

    这本书深入探讨了Python在数据科学领域的应用,涵盖了从数据处理、统计分析到机器学习等多个关键领域。 Python作为一门多用途编程语言,其简洁明了的语法使得初学者能够快速上手,而其丰富的库支持则使其在数据科学...

    python3导入excel数据到mysql例子

    Python的`threading`模块可以帮助我们创建多个线程并行处理数据。每个线程负责一部分数据的读取和插入,从而提升整体效率。 7. **数据分块**:当Excel文件过大时,一次性读取所有数据可能导致内存溢出。可以使用...

    python100个小例子.pdf

    这个实例涉及到根据利润计算奖金的算法,体现了Python处理数学问题的能力。通过定义不同的利润区间和对应的提成比例,用循环结构逐段计算并累加奖金。这涉及到Python的输入输出、数值运算和条件分支。注意在处理货币...

    python爬虫小例子

    Python爬虫技术是一种用于自动化网络数据获取的编程技术,它能高效地遍历网页、提取信息,...通过学习这个"python爬虫小例子",我们可以了解到如何编写一个简单的异步加载网页的爬虫,为今后的网络数据抓取奠定基础。

    Python 实用小例子

    "Python实用小例子"这个主题,很显然,将涵盖一系列简洁而实用的Python代码示例,帮助初学者快速理解并掌握Python的基本语法和常用功能。在这个压缩包文件`python-small-examples-master`中,我们可以期待找到各种...

    python小程序:数据抓取入库

    综上所述,这个"python小程序:数据抓取入库"项目涉及到Python的Web抓取、数据库操作、配置文件解析等多个方面,是学习Python实战技能的好例子。通过这个项目,你可以深入了解如何利用Python进行数据抓取和入库,...

Global site tag (gtag.js) - Google Analytics