精华内容
下载资源
问答
  • python中文文本处理
    2020-12-30 13:38:35

    SnowNLP:一个处理中文文本的 Python 类库

    简介

    SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里没有用NLTK,所有的算法都是自己实现的,并且自带了一些训练好的字典。注意本程序都是处理的unicode编码,所以使用时请自行decode成unicode。

    作者: isnowfy

    from snownlp import SnowNLPs = SnowNLP(u'这个东西真心很赞')s.words # [u'这个', u'东西', u'真心', #  u'很', u'赞'] s.tags # [(u'这个', u'r'), (u'东西', u'n'), #  (u'真心', u'd'), (u'很', u'd'), #  (u'赞', u'Vg')] s.sentiments # 0.9830157237610916 positive的概率 s.pinyin # [u'zhe', u'ge', u'dong', u'xi', #  u'zhen', u'xin', u'hen', u'zan'] s = SnowNLP(u'「繁體字」「繁體中文」的叫法在臺灣亦很常見。')s.han # u'「繁体字」「繁体中文」的叫法 # 在台湾亦很常见。' text = u'''自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系,但又有重要的区别。自然语言处理并不是一般地研究自然语言,而在于研制能有效地实现自然语言通信的计算机系统,特别是其中的软件系统。因而它是计算机科学的一部分。''' s = SnowNLP(text)s.keywords(3) # [u'语言', u'自然', u'计算机'] s.summary(3) # [u'自然语言处理是一门融语言学、计算机科学、 #    数学于一体的科学', #  u'自然语言处理是计算机科学领域与人工智能 #    领域中的一个重要方向', #  u'而在于研制能有效地实现自然语言通信的计 #    算机系统'] s.sentencess = SnowNLP([[u'这篇', u'文章'],             [u'那篇', u'论文'],             [u'这个']])s.tfs.idfs.sim([u'文章'])# [0.3756070762985226, 0, 0]

    Features

    中文分词(Character-Based Generative Model)

    词性标准(TnT 3-gram 隐马)

    情感分析(现在训练数据主要是买卖东西时的评价,所以对其他的一些可能效果不是很好,待解决)

    文本分类(Naive Bayes)

    转换成拼音

    繁体转简体

    提取文本关键词(TextRank算法)

    提取文本摘要(TextRank算法)

    tf,idf

    Tokenization(分割成句子)

    文本相似(BM25)

    支持python3(感谢erning)

    Get It now

    $ pip install snownlp

    更多信息可以浏览项目主页:SnowNLP

    更多相关内容
  • 中文文本处理的工具: 判断unicode是否是汉字,数字,英文,或者其他字符。全角符号转半角符号。 def is_chinese(uchar): """判断一个unicode是否是汉字""" if uchar >= u'\u4e00' and uchar<=u'\u9fa5':...

    中文文本处理的工具:

            判断unicode是否是汉字,数字,英文,或者其他字符。全角符号转半角符号。

    def is_chinese(uchar):
        """判断一个unicode是否是汉字"""
        if uchar >= u'\u4e00' and uchar<=u'\u9fa5':
            return True
        else:
            return False
    
    def is_chinese_all(ustring):
        """判断一个unicode串是否是汉字串"""
        for uchar in ustring:
            if not is_chinese(uchar):
                return False
        return True
    
    def is_number(uchar, but = u''):
        """判断一个unicode是否是数字"""
        if uchar == but or uchar >= u'\u0030' and uchar<=u'\u0039':
            return True
        else:
           return False
     
    def is_number_all(ustring, but = u''):
        """判断一个unicode串是否是数字串"""
        for uchar in ustring:
            if not is_number(uchar, but):
                return False
        return True
    
    def is_alphabet(uchar, but = u''):
        """判断一个unicode是否是英文字母"""
        if uchar == but or (uchar >= u'\u0061' and uchar<=u'\u007a') or (uchar >= u'\u0041' and uchar<=u'\u005a'):
            return True
        else:
            return False
     
    def is_alphabet_all(ustring, but = u''):
        """判断一个unicode串是否是英文字母串"""
        for uchar in ustring:
            if not is_alphabet(uchar, but):
                return False
        return True
    
    def is_alphanum(uchar, but = u''):
        """判断一个unicode是否是英文字母或数字"""
        if is_number(uchar, but) or is_alphabet(uchar, but):
            return True
        else:
            return False
     
    def is_alpha_or_num_all(ustring, but = u''):
        """判断一个unicode串是否是英文字母或数字串"""
        for uchar in ustring:
            if not is_alphanum(uchar, but):
                return False
        return True
    
    def is_alpha_and_num_all(ustring, but = u''):
        """判断一个unicode串是否是英文字母及数字串"""
        alphabet = 0
        number = 0
        for uchar in ustring:
            if is_alphabet(uchar, but):
                alphabet += 1
            elif is_number(uchar, but):
                number += 1
            else:
                return False
        if alphabet > 0 and number > 0:
            return True
        else:
            return False
    
    def is_other(uchar, but = u''):
        """判断是否非汉字、数字和英文字符"""
        if not (is_chinese(uchar) or is_number(uchar, but) or is_alphabet(uchar, but)):
            return True
        else:
            return False
     
    def is_other_all(ustring, but = u''):
        """判断是否非汉字、数字和英文字符串"""
        for uchar in ustring:
            if not is_other(uchar, but):
                return False
        return True
    
    def exist_chinese(ustring):
        for uchar in ustring:
            if is_chinese(uchar):
                return True
        return False
    
    def exist_number(ustring):
        for uchar in ustring:
            if is_number(uchar):
                return True
        return False
    
    def exist_alphabet(ustring):
        for uchar in ustring:
            if is_alphabet(uchar):
                return True
        return False
    
    def exist_other(ustring, but = u''):
        for uchar in ustring:
            if is_other(uchar, but):
                return True
        return False
    
    def B2Q(uchar):
        """半角转全角"""
        inside_code=ord(uchar)
        if inside_code<0x0020 or inside_code>0x7e:      #不是半角字符就返回原来的字符
            return uchar
        if inside_code==0x0020:       #除了空格其他的全角半角的公式为:半角=全角-0xfee0
            inside_code=0x3000
        else:
            inside_code+=0xfee0
        return unichr(inside_code)
    
    def Q2B(uchar):
        """全角转半角"""
        if uchar == u'’':
    		return u'\''
        inside_code=ord(uchar)
        if inside_code==0x3000:
            inside_code=0x0020
        else:
            inside_code-=0xfee0
        if inside_code<0x0020 or inside_code>0x7e:      #转完之后不是半角字符返回原来的字符
            return uchar
        return unichr(inside_code)
    
    def stringQ2B(ustring):
        """把字符串全角转半角"""
        return "".join([Q2B(uchar) for uchar in ustring])
    
    def uniform(ustring):
        """格式化字符串,完成全角转半角,大写转小写的工作"""
        return stringQ2B(ustring).lower()
    
    def string2List(ustring):
        """将ustring按照中文,字母,数字分开"""
        retList=[]
        utmp=[]
        for uchar in ustring:
            if is_other(uchar):
                if len(utmp)==0:
                    continue
                else:
                    retList.append("".join(utmp))
                    utmp=[]
            else:
                utmp.append(uchar)
        if len(utmp)!=0:
            retList.append("".join(utmp))
        return retList
    展开全文
  • Python处理中文文本

    2021-06-03 15:52:19
    Python使用正则表达式、jieba库、pandas、matplotlib等库进行处理中文文本

    Python处理中文文本

    author:Ernest

    使用Python处理文本是件十分有趣的任务,通过某些操作,你可以自由地获取到你所需要的内容,下面就来看看怎么做吧。

    要求

    1.选择一部长度合适的小说,中文、英文或其他语种皆可,长度不低于5万字。
    2.首先对文本进行词(字)频统计,中文可以进行分词统计词频,或不分词统计字频,英文要求统计词频并考虑词语的大小写等价性。
    3.按照词频顺序列出所有的词及其出现次数;
    4.绘制排序-数量曲线,验证Zipf-Law(可以用第三方软件绘图)。
    5.利用正则表达式查找文件中的某种特定模式,对这种模式进行提取分析。要求提取出的内容有一定的复杂性(多种匹配结果),提取的数量不低于20个。

    开始处理

    1.读取文本

    这里我们选择《自律胜于纪律》一书,资源上百度网盘
    (链接:https://pan.baidu.com/s/15E4HiJZwtnOdv1Ql4tFlmQ 提取码:72jd )
    Python打开文本的写法有两种,一种是直接使用open()方法,返回文件对象,使用完毕后要使用close()方法关闭文件对象;另一种是使用with open() as f写法,你只管打开文件,并在需要时使用它,Python自会在合适的时候自动将其关闭,详看下方代码解释。

    path = r'自律胜于纪律.txt'  # 要打开的文件,这里使用相对路径(关于Windows下使用相对路径和绝对路径的方法见下文)
    
    '''写法一'''
    f = open(path, 'r')	# f即为open()方法返回的文件对象,后续对文件的一切操作都是基于这个对象
    str = f.read()  	# 读取文本
    print(str)          # 对读取到的文本输出看一下效果
    f.close() 			# 关闭文件对象
    
    '''写法二'''
    with open(path, 'r', encoding='utf8') as f:	# 此处已经打开文件并将 f 作为文件对象
    	str = f.read()	# 读取文本
    # 到这里时 f 文件对象已经不再使用,会自动关闭
    print(str)			# 对读取到的文本输出看一下效果,这里只能操作 str ,不能再操作 f 对象
    s = f.read()		# 报错!!!f 对象的作用域只能在上面的 with 块内
    

    一般对文件进行各种操作都使用with open() as f写法,关键字with在不再需要访问文件后将其关闭,你当然可以使用open()close()来打开和关闭文件,但这样做时一方面如果程序存在bug导致close()没有执行,文件将不会关闭,这看似微不足道,但未妥善地关闭文件可能会导致数据丢失或受损;另一方面如果在程序中过早地使用close(),你会发现需要使用文件时它已经关闭,这会导致更多的错误,并非在任何情况下你都能轻松确定关闭文件的恰当时机,但通过with关键字来操作,你完全可以将这个问题交给Python,你只管打开并使用它。

    【关于绝对路径与相对路径】

    在这里插入图片描述

    假使文件位置如上图所示
    使用绝对路径打开txt文件:

    text = open("D:\\study\\Python\\TXT\\test.txt").read()
    print(text)
    

    使用相对路径打开txt文件:

    text = open("..\\TXT\\test.txt").read()
    print(text)
    

    其中,使用双反斜杠(\)是因为Python中将反斜杠()作为转义字符,这里使用单反斜杠将会报错,而Linux与Mac OS则不必担心;相对路径中的两个点(…)表示返回此文件的上一级目录,一个点(.)表示此文件的所在目录。

    2.分词并进行词频统计

    中文分词使用jieba库进行,词频统计则直接对分词结果进行遍历统计即可。
    jieba分词库的使用这里不作介绍,百度即可。

    import jieba
    
    # 使用jieba分词
    all_words = jieba.lcut(txt)
    counts = {}
    # 词频统计
    for word in all_words:
    	if len(word) == 1:
    		continue
    	else:
    		counts[word] = counts.get(word, 0) + 1
    # 词频排序
    items = list(counts.items())
    items.sort(key=lambda x:x[1], reverse=True)
    sort_li = sorted(counts.values(), reverse=True)
    

    得到词频统计的结果之后将其写入csv文件中,并且绘制排序-数量曲线,这里使用matplotlib库进行二维图像绘制。

    import matplotlib.pyplot as plt
    
    # 将排序结果写入到csv文件中
    pd.DataFrame(items).to_csv('自律胜于纪律.csv', encoding='utf-8_sig')
    X = [i for i in range(len(sort_li))]
    plt.plot(X, sort_li, 'r')
    plt.xscale('log')
    plt.yscale('log')
    plt.xlabel('word number')
    plt.ylabel('word frequency')
    plt.title('Word Frequency Statistics')
    plt.show()
    

    在这里插入图片描述
    这是输出到csv文件中的效果,共计出现11071个词。

    在这里插入图片描述

    这是绘制的排序-数量图,可以明显验证齐普夫定律(Zipf’s law),通过查看csv文件,词频在100以上的词仅有不到50个,占总词数的0.45%。

    3.正则表达式匹配

    使用正则表达式对小说中的内容进行提取,Python正则表达式的用法这里不作介绍,百度即可。
    1.匹配小说中所有章节名

    pat_chapter = '第\\d+章.{8}'	# 正则表达式
    chapter = re.findall(pat_chapter, txt)	# 使用findall()方法进行全文匹配
    if chapter:	# 如果成功匹配到
    	for item in chapter:
        	print(unicodedata.normalize('NFKC', item)) # 使用unicodedata将空格字符正常显示
    else:
    	print("匹配失败")
    '''
    输出如下:
    第1章 自律是一种信仰
    第2章 自律是一种自省
    第3章 自律是一种自警
    第4章 自律是一种素质
    第5章 自律是一种自爱
    第6章 自律是一种觉悟
    第7章 管好自己的目标
    第8章 管好自己的言行
    第9章 管好自己的时间
    第10章 管好自己的习惯
    第11章 管好自己的情绪
    第12章 管好自己的心态
    第1章 自律是一种信仰
    第2章 自律是一种自省
    第3章 自律是一种自警
    第4章 自律是一种素质
    第5章 自律是一种自爱
    第6章 自律是一种觉悟
    第7章 管好自己的目标
    第8章 管好自己的言行
    第9章 管好自己的时间
    第10章 管好自己的习惯
    第11章 管好自己的情绪
    第12章 管好自己的心态
    
    进程已结束,退出代码0
    '''
    #已匹配到文中全部章节名,符合要求
    

    2.多个匹配
    可以发现这样的匹配是可行的,但是如果想要一次性匹配多种、多个内容,但又想避免写出重复代码,这个时候字典的作用就体现出来了。

    '''正则匹配'''
    def selectSome(txt):
        # 匹配所有章节名
        pattens = {
            '所有章节名' : '第\\d+章.{8}',
            '人名-罗纳德' : '.{3}罗纳德.{3}',
            '所有出现的书籍' : '《[^》]*》',
            '所有人物说的话' : '.{8}:“[^”]*”',
            '所有引用但不是以冒号引出的第一人称说的话' : '[^:]“[^”]*”',
            '所有顿号的词' : '[,。:?“][^,。:?]*、.*[,|。]{1}'
        }
        for key, value in pattens.items():
            print('=====================    下面是' + key + '  =====================')
            chapter = re.findall(value, txt)
            nums = 1
            if chapter:
                for item in chapter:
                    print(str(nums) + '.  ' + unicodedata.normalize('NFKC', item))  # 使用unicodedata将空白字符正常显示
                    nums += 1
            else:
                print("匹配失败")
    

    这样只需要修改字典中的正则键值对即可实现一次性完成所有的匹配了,运行结果太长,这里不作展示,读者可自行运行代码体验。

    总结及源码

    上述操作涉及Python的基本语法、正则表达式的用法以及jieba、pandas、matplotlib、unicodedata等库的使用,难度系数不大,适宜练手熟悉各种函数的用法,读者可基于此再进行更多的操作练习。
    创作不易,切勿侵权照搬。

    源码

    '''
    Python实现文本处理
    @author: Ernest
    2021-6-3
    '''
    import jieba
    import pandas as pd
    import unicodedata
    import matplotlib.pyplot as plt
    import re
    
    '''词频统计'''
    def word_freq(txt):
        # 使用jieba分词
        all_words = jieba.lcut(txt)
        counts = {}
        # 词频统计
        for word in all_words:
            if len(word) == 1:
                continue
            else:
                counts[word] = counts.get(word, 0) + 1
        # 词频排序
        items = list(counts.items())
        items.sort(key=lambda x:x[1], reverse=True)
        sort_li = sorted(counts.values(), reverse=True)
        # 将排序结果写入到csv文件中
        pd.DataFrame(items).to_csv('自律胜于纪律.csv', encoding='utf-8_sig')
        # 绘制排序-数量曲线
        X = [i for i in range(len(sort_li))]
        plt.plot(X, sort_li, 'r')
        plt.xscale('log')
        plt.yscale('log')
        plt.xlabel('word number')
        plt.ylabel('word frequency')
        plt.title('Word Frequency Statistics')
        plt.show()
    
    '''正则匹配'''
    def selectSome(txt):
        # 所有想要匹配的正则表达式
        pattens = {
            '所有章节名' : '第\\d+章.{8}',
            '人名-罗纳德' : '.{3}罗纳德.{3}',
            '所有出现的书籍' : '《[^》]*》',
            '所有人物说的话' : '.{8}:“[^”]*”',
            '所有引用但不是以冒号引出的第一人称说的话' : '[^:]“[^”]*”',
            '所有顿号的词' : '[,。:?“][^,。:?]*、.*[,|。]{1}'
        }
        for key, value in pattens.items():
            print('=====================    下面是' + key + '  =====================')
            chapter = re.findall(value, txt)
            nums = 1
            if chapter:
                for item in chapter:
                    print(str(nums) + '.  ' + unicodedata.normalize('NFKC', item))  # 使用unicodedata将空白字符正常显示
                    nums += 1
            else:
                print("匹配失败")
    
    def main():
        # 读取文本
        with open(r'自律胜于纪律.txt', 'r', encoding='utf8') as TJ:
            txt = TJ.read()
        selectSome(txt)
        word_freq(txt)
    
    if __name__ == '__main__':
        main()
    
    展开全文
  • 基于Python语言的中文文本处理研究.pdf
  • python文本处理

    2017-11-30 14:14:28
    #转换前 #./data/train/speech/001 ./data/train/feature/001.mfc #./data/train/speech/002 ./data/train/feature/002.mfc #转换后 #./data/train/speech/001.wav ./data/train/feature/001.mfc ...
    #转换前
    #./data/train/speech/001   ./data/train/feature/001.mfc
    #./data/train/speech/002   ./data/train/feature/002.mfc
    #转换后
    #./data/train/speech/001.wav   ./data/train/feature/001.mfc
    #./data/train/speech/002.wav   ./data/train/feature/002.mfc
    
    import string
    import re
    
    path1='D:\\tensorflow\\VoiceDialSystem\\VoiceDialSystem\\codetr.scp'
    path2='D:\\tensorflow\\VoiceDialSystem\\VoiceDialSystem\\codetr1.scp'
    pattern = re.compile('S0')
    f2=open(path2,'w')
    with open(path1,'r') as text:
        lines = text.readlines()  # 读取全部内容
        for line in lines:
            #print(line)
            line=line.replace('S0','')
            line=line.replace('\\','/')
            part=line.split()
            linecombine=part[0]+'.wav'+ '\t'+part[1]+'\n'
            print(linecombine)
            f2.write(linecombine)
    
    展开全文
  • 今天小编就为大家分享一篇python多进程提取处理大量文本的关键词方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • Python文本处理

    2021-01-29 05:49:04
    我正在尝试使用Python处理从.pdf中获取的文本。在我尝试的方法之一是:找到特定的项目并打印同一行、前一行或后一行。在但我没法理解这一点。在下面的代码将使用“find”函数查找并打印当前行中的信息,但我需要能够...
  • 我本科毕业设计做的是文本挖掘,用R语言做的,发现R语言对文本处理特别不友好,没有很多强大的库,特别是针对中文文本的,加上那时候还没有学机器学习算法。所以很头疼,后来不得已用了一个可视化的软件RostCM,但是...
  • /user/bin/python # coding:utf-8 __author__ = 'yan.shi' import nltk import numpy import jieba import codecs N=100#单词数量 CLUSTER_THRESHOLD=5#单词间的距离 TOP_SENTENCES=5#返回的top n句⼦ #分句 def ...
  • TextBlob:简化的文本处理主页:https://textblob.readthedocs.io/ TextBlob是用于处理文本数据的Python(2和3)库。 它提供了一个简单的API,用于深入研究常见的自然语言处理TextBlob:简化的文本处理主页:...
  • 对文档(多个句子)进行中文分词: a_doc : ['孔丘开办私塾,学费要十条腊肉', '听孔老二讲学的,都是贵族、官宦人家的子弟。', '清代乾嘉学派考证儒学多为造假'] import jieba def cut_words(a_list, a_...
  • 文本处理是经常会遇到的事情,涉及词性标注、句法分析、关键词提取等,那么你知道Python的文本处理工具有哪些吗?我们一起来看看吧。1、Jieba:最好的Python中文分词组件,其功能包含三种分词模式,精确模式、全模式...
  • 基于Python中文文本分类的实现.pdf
  • 文本处理一般包括词性标注,句法分析,关键词提取,文本分类,情感分析等等,这是针对中文的,如果是对于英文来说,只需要基本的tokenize。本文为大家提供了以下这些工具包。1.Jieba【结巴中文分词】做最好的 Python...
  • Python文本格式处理

    2022-02-27 21:23:19
    Python文本格式处理 1. 大小写处理 upper()函数 str = "hello world" print(str.upper()) #输出的内容为HELLO WORLD #此函数将字符全部变为大写 lower()函数 str = "Hello World" print(str.lower()) #输出的...
  • 搜集、整理、发布 中文 自然语言处理 语料/数据集,与 有志之士 共同 促进 中文 自然语言处理 的 发展。
  • Python中文文本分析基础

    千次阅读 多人点赞 2020-12-13 10:24:08
    中文文本分析相关库1. 中文分词jieba库(1). jieba库概述(2). jieba库安装(3). jieba分词原理(4). jieba库的使用说明1. 精确模式2. 全模式3. 搜索引擎模式(5). jieba库常用函数2. 词云绘制worldcloud库3. 社交关系...
  • python自然语言处理实战pdf和代码,欢迎对自然语言处理感兴趣的朋友下载
  • Python 医学文本结构化,文本分段,文本正则化处理,医学文本拆分成段落
  • 有时在处理不规则数据时需要提取文本包含的时间日期。 dateutil.parser模块可以统一日期字符串格式。 datefinder模块可以在字符串中提取日期。 datefinder模块实现也是用正则,功能很全 但是对中文不友好。 但是...
  • 前言文本处理一般包括词性标注,句法分析,关键词提取,文本分类,情感分析等等,这是针对中文的,如果是对于英文来说,只需要基本的tokenize。本文为大家提供了以下这些工具包。我整理了Python的相关学习视频及学习...
  • python 中文文本分类

    万次阅读 多人点赞 2017-02-06 11:31:21
    写这篇博文用了很多时间和精力,如果这篇博文对你有帮助,希望您可以打赏给博主相国大人。哪怕只捐1毛钱,也是一种心意。通过这样的方式,也可以培养...本文假定,你对python已经有了最基本的掌握。 如果你希望能够
  • 利用Python实现中文文本关键词抽取,分别采用TF-IDF、TextRank、Word2Vec词聚类三种方法。
  • 这些对文本的操作经常用到, 那我就总结一下。 陆续补充。。。 操作: strip_html(cls, text) 去除html标签 separate_words(cls, text, min_lenth=3) 文本提取 get_words_frequency(cls, words_list) 获取词频 源码...
  • 1.问题描述进行文本分析的时候需要将中文和非中文进行分开处理,下面通过Python文本中的中文部分提取出来进行需要的处理。2.问题解决开发环境:Linux程序代码如下:split.py#!/usr/bin/python#-*- coding:utf-8 -*...
  • SnowNLP是国人开发的python类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里...
  • 朴素贝叶斯估计 朴素贝叶斯是基于贝叶斯定理与特征条件独立分布假设的分类方法。首先根据特征条件独立的假设学习输入/输出的联合概率分布,然后基于此模型,对给定的输入x,利用贝叶斯定理求出后验概率最大的输出y。...
  • learn-python 1. 基本内容 base directory of a project 去掉非中文词汇 binary search cache callback cartesian product concurrency confusion matrix construct LineSentence data analysis decision tree 决策...
  • 前言在自然语言处理领域中,分词和提取关键词都是对文本处理时通常要进行的步骤。用Python语言对英文文本进行预处理时可选择NLTK库,中文文本预处理可选择jieba库。当然也有其他好用的库,个人在中文预处理时经常...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 75,807
精华内容 30,322
关键字:

python中文文本处理