使用python對檔案中的單詞進行提取
由於需要使用一個純單片語成的檔案,在網上下載到了一個存放單詞的檔案,但是裡面有中文的解釋,那就需要做一下提取了。
文字的形式如下:
所見即所得,這個文字是有規律的,每個單詞為一行,緊接著下一行便是單詞的解釋,有了這種規律我們就很好處理了。
首先我們來將檔案的資料讀取出來:
程式碼執行的結果為:#coding:utf-8 file_object = open('words.txt') try: lines = file_object.readlines() finally: file_object.close( ) for line in lines: print line
顯然,這不是我們想要的結果,因為這裡面有太多的空行了,現在最主要的就是要處理掉這些妨礙我們的空行,對於中文的亂碼呢,我們是不需要中文的解釋的,所以它是無妨礙的,如果想看得舒服些,那麼我們就轉碼一下就好了。現在最主要的就是要知道為什麼會出現這麼多的空行,因為我們的檔案是已將看過了,顯然是這些空行的出現是有點“匪夷所思”的,這也是由於python讀檔案的機制導致的,下面我們修改下程式碼,來看看原因:
在這裡,我們直接輸出lines,得到如下的結果:#coding:utf-8 file_object = open('words.txt') try: lines = file_object.readlines() finally: file_object.close( ) print lines
我們隨意拿出這句'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的換行
好了,這下就是我們想看到的東西了,那麼,現在我們可以將這些輸出寫入 到新的檔案裡了,然後就可以得到我們想要的單詞文字了。
#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: #只有奇數行為單詞
myfile.write(word)
執行程式便可以得到新的單詞檔案了,最終提取了45000多個單詞,檔案如下所示:
很顯然,滿足我們最終想要實現的要求,那麼可以收工了。
最後附上兩個檔案的連結:http://pan.baidu.com/s/1cMvmbG。
相關推薦
使用python對檔案中的單詞進行提取
由於需要使用一個純單片語成的檔案,在網上下載到了一個存放單詞的檔案,但是裡面有中文的解釋,那就需要做一下提取了。 文字的形式如下: 所見即所得,這個文字是有規律的,每個單詞為一行,緊接著下一行便是單詞的解釋,有了這種規律我們就很
python對列表中的字典進行排序
pytho lam 數據 image .com strong true alt -s 數據顯示為: rows=[{‘日期‘: ‘2018-09-04‘, ‘測試1‘: ‘50.00 %‘, ‘測試2‘: ‘100.00%‘}, {‘日期‘: ‘2018-09-05‘, ‘
Python對MySQL中讀取的資料進行json化
對MySQL中讀取的資料進行json化 資料格式: ((cluster1,db1,tb1), (cluster1,db1,tb2), (cluster1,db1,tb3), (cluster1,db2,tb3), (cluster2,db3,tb5), (cluster3,db4
在Arcgis中基於Python對地圖分級別進行四色填充
四色填充是數學領域比較有名的定理,大概意思是說對於任意無飛地的多邊形區域,總能選取四種顏色對每個多邊形進行填充,保證相鄰的多邊形具有不同的顏色。在地圖製圖中,該定理被用於地圖著色,保證只採用四種顏色而使得每個省/市/縣與相鄰區域具有不同的顏色。 一、專案需
用python統計檔案中各個單詞出現的次數
import string d = {} def choice(str): s = str.lower() #全部轉化為小寫 for c in range(97,123): #ASC
python 對txt中每行內容進行批量替換
f = open('./val.txt') lines = f.readlines() #整行讀取 f.close() for line in lines: rs = line.rstrip('\n') #去除原來每行後面的換行符,但有可能是\r或\r\n newname=rs.replace
ant中對檔案和目錄進行復制和刪除
4.5 Copy Task:對檔案和目錄進行復制 Copy 任務把一個或多個檔案複製到指定的目錄下。但要注意的是,如果目標目錄下具有同名的檔案,那麼只有當原始檔相對於目標檔案更新時,Ant工具才會複製這個檔案。在Copy任務中可以使用FileSet型別來定義檔案集合。 4.5.1 Copy Task的屬性及
python基礎19 -------面向對象終結篇(介紹python對象中各種內置命令)
.com 介紹 類和對象 python false 指定 事物 width images 一、isinstance()和issubclass()命令 1、isinstance(對象,類型) 用來判定該對象是不是此類型或者說是該對象是不是此類的對象,返回結果為Tr
對輸入的單詞進行排序
printf ret main ++ 技術分享 image pre es2017 str 代碼如下: #include<stdio.h> #include<string.h> int main() { int i,j; char
讀寫文件、文件方法、python2的亂碼問題、python對passwd文件進行排序
__main__ .com 哈哈 == nco star 9.png mar ges 讀寫文件 if __name__==‘__main__‘: filename=input(‘請輸入保存的文件:‘) fdfile=open(filename,‘w+‘)
Python對字符串進行MD5加密處理
python color hashlib rip Coding lib reload md5加密 進行 import hashlibimport sysreload(sys)sys.setdefaultencoding(‘utf-8‘)m = hashlib.md5()m.
Python-對Pcap文件進行處理,獲取指定TCP流
serve cap dscp 解析 地址 沒有 ont wikipedia 校驗和 通過對TCP/IP協議的學習,本人寫了一個可以實現對PCAP文件中的IPV4下的TCP流提取,以及提取指定的TCP流,鑒於為了學習,沒有采用第三方包解析pcap,而是對byt
Python 同一檔案中,有unittest不執行“if __name__ == '__main__”,不生成HTMLTestRunner測試報告的解決方案
1、問題:Python中同一個.py檔案中同時用unittest框架和HtmlReport框架後,HtmlReport不被執行。 2、為什麼?其實不是HtmlReport不被執行,也不是HtmlReport不生成測試報告,是因為if __name__ == '__main__'中的程式碼根本沒執
python 從檔案中讀取資料,同時去除掉空格和換行
從檔案中讀取資料,同時去除掉空格和換行,程式碼如下 import numpy as np def sort(path): w = open(path,'r') l = w.readlines() col=[] for k in l: k = k.strip('\n')
Hadoop 統計檔案中單詞出現的次數
pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://
統計檔案中單詞的個數
include”stdafx.h” include include include define Inti_word 0 define In_word 1 define Out_word 2 define End_word 3 int Count_word(c
python-對檔案的操作
最近在通過小甲魚的視訊學習python相關的知識,以下是對學習過程中的一些總結 python中檔案的基本操作 開啟檔案:open open(file, mode=‘r’, buffering=-1, encoding=None, errors=None, newline=None
python判斷檔案中有否重複行,逐行讀檔案檢測另一檔案中是否存在所讀內容
#!/bin/env python # coding:utf-8 #程式功能是為了完成判斷檔案中是否有重複句子 #並將重複句子打印出來 res_list = [] f = open('./downloadmd5.txt','r') res_dup = [] index = 0 file_d
CAD中怎麼進行提取屬性資料
在CAD繪圖中,我們都是使用的CAD編輯器來進行繪製三維,一張圖紙中有許多的資料進行組合而來的,然後在繪製完CAD圖紙走,我們還需要對CAD圖紙中的資料進行檢視,但是CAD中怎麼進行提取屬性資料了,具體要怎麼來操作,輸入在網上也有一定的操作方法,但是每個人的方法都有不同的,那下面小編就來教教大傢俱體操作技巧。
python對列表中的元素去重並保持原順序
python對列表中的元素去重並保持原順序 對列表去重操作最快捷方便的就是把列表轉成元組,但是元組是無序的,所以轉成元組的話,原來的資料順序會發生變化,所以我們可以用sort()中的key欄位進行設定。 #隨便建立一個有重複資料的列表 lt1 = [0,1,2,3,4,4,5,5,6