最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實(shí)現(xiàn)將一個(gè)大文件按段落分隔為多個(gè)小文件的簡(jiǎn)單操作方法

 更新時(shí)間:2017年04月17日 10:31:06   作者:捂汗縣長(zhǎng)  
這篇文章主要介紹了Python實(shí)現(xiàn)將一個(gè)大文件按段落分隔為多個(gè)小文件的簡(jiǎn)單操作方法,涉及Python針對(duì)文件的讀取、遍歷、轉(zhuǎn)換、寫入等相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Python實(shí)現(xiàn)將一個(gè)大文件按段落分隔為多個(gè)小文件的簡(jiǎn)單操作方法。分享給大家供大家參考,具體如下:

今天幫同學(xué)處理一點(diǎn)語料。語料文件有點(diǎn)大,并且是以連續(xù)兩個(gè)換行符作為段落標(biāo)志,他想把它按段落分隔成多個(gè)小文件,即每3個(gè)段落組成一個(gè)新文件。由于以前沒有遇到過類似的操作,在網(wǎng)上找了一些相似的方法,看起來都有點(diǎn)復(fù)雜。所以經(jīng)嘗試,自己寫了一段代碼,完美解決問題。

基本思路是,先讀原文件內(nèi)容,并使用正則表達(dá)式,依據(jù)\n\n進(jìn)行切片處理,結(jié)果為一個(gè)列表,其中每一個(gè)列表元素都存放一個(gè)切片中的內(nèi)容;然后創(chuàng)建一個(gè)寫文件的句柄;接下來遍歷切片列表,并寫入當(dāng)前切片內(nèi)容,判斷是否已經(jīng)寫入了3個(gè)段落,如果不是,則繼續(xù)讀寫下一個(gè)切片,如果已經(jīng)夠3個(gè),則關(guān)閉之前的寫文件句柄,以不同的文件名重新創(chuàng)建一個(gè)新的寫文件句柄,循環(huán)結(jié)束,等待讀寫下一個(gè)切片。

# -*- coding:utf8 -*-
import re;
p=re.compile('\n\n',re.S);
fileContent=open('files/辦公室.txt','r',encoding='utf8').read();#讀文件內(nèi)容
paraList=p.split(fileContent) #根據(jù)換行符對(duì)文本進(jìn)行切片
fileWriter=open('files/0.txt','a',encoding='utf8');#創(chuàng)建一個(gè)寫文件的句柄
for paraIndex in range(len(paraList)):#遍歷切片后的文本列表
  fileWriter.write(paraList[paraIndex]);#先將列表中第一個(gè)元素寫入文件中
  if((paraIndex+1)%3==0):#判斷是否寫夠3個(gè)切片,如果已經(jīng)夠了
    fileWriter.close(); #關(guān)閉當(dāng)前句柄
    fileWriter=open('files/'+str((paraIndex+1)/3)+'.txt','a',encoding='utf8'); #重新創(chuàng)建一個(gè)新的句柄,等待寫入下一個(gè)切片元素。注意這里文件名的處理技巧。
fileWriter.close();#關(guān)閉最后創(chuàng)建的那個(gè)寫文件句柄
print('finished');

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python文件與目錄操作技巧匯總》、《Python文本文件操作技巧匯總》、《Python URL操作技巧總結(jié)》、《Python圖片操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python Socket編程技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論

新民市| 克拉玛依市| 河曲县| 赞皇县| 仪征市| 普宁市| 图木舒克市| 和硕县| 尼勒克县| 玉门市| 西乌珠穆沁旗| 黄骅市| 翁牛特旗| 宿迁市| 无极县| 化德县| 饶阳县| 高阳县| 孟连| 阿图什市| 桦川县| 寿阳县| 安多县| 普兰县| 曲靖市| 太康县| 兴化市| 明星| 同仁县| 仙桃市| 包头市| 丘北县| 巧家县| 如皋市| 静宁县| 涡阳县| 阿坝| 济南市| 中卫市| 平原县| 淳化县|