使用python對文件中的單詞進行提取的方法示例
由于需要使用一個純單詞組成的文件,在網(wǎng)上下載到了一個存放單詞的文件,但是里面有中文的解釋,那就需要做一下提取了。
文本的形式如下:
所見即所得,這個文本是有規(guī)律的,每個單詞為一行,緊接著下一行便是單詞的解釋,有了這種規(guī)律我們就很好處理了。
首先我們來將文件的數(shù)據(jù)讀取出來:
#coding:utf-8 file_object = open('words.txt') try: lines = file_object.readlines() finally: file_object.close( ) for line in lines: print line
代碼執(zhí)行的結(jié)果為:
顯然,這不是我們想要的結(jié)果,因為這里面有太多的空行了,現(xiàn)在最主要的就是要處理掉這些妨礙我們的空行,對于中文的亂碼呢,我們是不需要中文的解釋的,所以它是無妨礙的,如果想看得舒服些,那么我們就轉(zhuǎn)碼一下就好了?,F(xiàn)在最主要的就是要知道為什么會出現(xiàn)這么多的空行,因為我們的文件是已將看過了,顯然是這些空行的出現(xiàn)是有點“匪夷所思”的,這也是由于python讀文件的機制導致的,下面我們修改下代碼,來看看原因:
#coding:utf-8 file_object = open('words.txt') try: lines = file_object.readlines() finally: file_object.close( ) print lines
在這里,我們直接輸出lines,得到如下的結(jié)果:
我們隨意拿出這句'runlet\n', 'n.\xcd\xb0,\xd0\xa1\xba\xd3\n', '\n', 'runnel\n', 'n.\xd0\xa1\xba\xd3,\xcf\xb8\xc1\xf7\n', '\n',從中可以看出,對于每行的文件,在讀取的時候,換行符“\n”也是會被讀取在單詞和對應的解釋的后面的,所以這也就是為什么會有那么多空行的原因了,這顯然不是我們想要看見的,下面我們處理一下,讓這些多余的空行失去效果:
#coding:utf-8 file_object = open('words.txt') try: lines = file_object.readlines() finally: file_object.close( ) for line in lines: if line!='\n': print line.decode('gb2312','ignore'), #逗號得帶著,因為文件自身帶了換行,可以代替pirnt的換行
程序執(zhí)行后,得到如下的結(jié)果:
好了,這下就是我們想看到的東西了,那么,現(xiàn)在我們可以將這些輸出寫入 到新的文件里了,然后就可以得到我們想要的單詞文本了。
#coding:utf-8 file_object = open('words.txt') try: lines = file_object.readlines() finally: file_object.close( ) myfile=open('newfile.txt','w') num=0 for word in lines: if word!='\n': num+=1 if num%2: #只有奇數(shù)行為單詞 myfile.write(word)
運行程序便可以得到新的單詞文件了,最終提取了45000多個單詞,文件如下所示:
很顯然,滿足我們最終想要實現(xiàn)的要求,那么可以收工了。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python解決報錯ImportError: Bad git executable.問題
這篇文章主要介紹了python解決報錯ImportError: Bad git executable.問題。具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06windows11環(huán)境安裝django項目GNU gettext工具的步驟
Django 框架具有很好的 I18N 和 L10N 的支持,其實現(xiàn)是基于 GNU 的 gettext,本文主要介紹了windows11環(huán)境安裝django項目GNU gettext工具的步驟,具有一定的參考價值,感興趣的可以了解一下2024-04-04TensorFlow用expand_dim()來增加維度的方法
今天小編就為大家分享一篇TensorFlow用expand_dim()來增加維度的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07