python实现按行分割文件


Posted in Python onJuly 22, 2019

本文实例为大家分享了python实现按行分割文件的具体代码,供大家参考,具体内容如下

#!/usr/bin/env python
#--*-- coding:utf-8 --*--
 
import os
 
class SplitFiles():
 """按行分割文件"""
 
 def __init__(self, file_name, line_count=200):
 """初始化要分割的源文件名和分割后的文件行数"""
 self.file_name = file_name
 self.line_count = line_count
 
 def split_file(self):
 if self.file_name and os.path.exists(self.file_name):
 try:
 with open(self.file_name) as f : # 使用with读文件
  temp_count = 0
  temp_content = []
  part_num = 1
  for line in f:
  if temp_count < self.line_count:
  temp_count += 1
  else :
  self.write_file(part_num, temp_content)
  part_num += 1
  temp_count = 1
  temp_content = []
  temp_content.append(line)
  else : # 正常结束循环后将剩余的内容写入新文件中
  self.write_file(part_num, temp_content)
 
 except IOError as err:
 print(err)
 else:
 print("%s is not a validate file" % self.file_name)
 
 def get_part_file_name(self, part_num):
 """"获取分割后的文件名称:在源文件相同目录下建立临时文件夹temp_part_file,然后将分割后的文件放到该路径下"""
 temp_path = os.path.dirname(self.file_name) # 获取文件的路径(不含文件名)
 part_file_name = temp_path + "temp_part_file"
 if not os.path.exists(temp_path) : # 如果临时目录不存在则创建
 os.makedirs(temp_path)
 part_file_name += os.sep + "temp_file_" + str(part_num) + ".part"
 return part_file_name
 
 def write_file(self, part_num, *line_content):
 """将按行分割后的内容写入相应的分割文件中"""
 part_file_name = self.get_part_file_name(part_num)
 print(line_content)
 try :
 with open(part_file_name, "w") as part_file:
 part_file.writelines(line_content[0])
 except IOError as err:
 print(err)
 
if __name__ == "__main__":
 sf = SplitFiles(r"F:\multiple_thread_read_file.txt")
 sf.split_file()

小编再为大家分享一段代码:

将文本文件按照指定的行数分割成数个小的文本文件

#! /usr/bin/env python
# -*- coding: utf-8 -*-
 
LIMIT=1000
file_count=0
url_list=[]
 
with open("123.txt") as f:
 for line in f:
 url_list.append(line)
 if len(url_list)<LIMIT:
 continue
 #数据达到LIMIT
 file_name=str(file_count)+".txt"
 with open(file_name,'w') as file:
 for url in url_list[:-1]:
 #print(url)
 file.write(url)
 file.write(url_list[-1].strip())
 url_list=[]
 file_count+=1
if url_list:
 file_name=str(file_count)+".txt"
 with open(file_name,'w') as file:
 for url in url_list:
 file.write(url)
print('done')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python的id()函数解密过程
Dec 25 Python
python 布尔操作实现代码
Mar 23 Python
Python实现的求解最小公倍数算法示例
May 03 Python
python库lxml在linux和WIN系统下的安装
Jun 24 Python
解决Pycharm界面的子窗口不见了的问题
Jan 17 Python
python UDP(udp)协议发送和接收的实例
Jul 22 Python
python Event事件、进程池与线程池、协程解析
Oct 25 Python
基于python的itchat库实现微信聊天机器人(推荐)
Oct 29 Python
调用其他python脚本文件里面的类和方法过程解析
Nov 15 Python
Python Tkinter Entry和Text的添加与使用详解
Mar 04 Python
Python操作Word批量生成合同的实现示例
Aug 28 Python
Python基于内置函数type创建新类型
Oct 22 Python
python UDP(udp)协议发送和接收的实例
Jul 22 #Python
linux环境下Django的安装配置详解
Jul 22 #Python
python判断一个对象是否可迭代的例子
Jul 22 #Python
树莓派使用python-librtmp实现rtmp推流h264的方法
Jul 22 #Python
python实现大文件分割与合并
Jul 22 #Python
cProfile Python性能分析工具使用详解
Jul 22 #Python
python实现大文本文件分割
Jul 22 #Python
You might like
实时抓取YAHOO股票报价的代码
2006/10/09 PHP
Thinkphp中import的几个用法详细介绍
2014/07/02 PHP
微信公众平台之快递查询功能用法实例
2015/04/14 PHP
php简单统计在线人数的方法
2016/05/10 PHP
php创建类并调用的实例方法
2019/09/25 PHP
javascript 四则运算精度修正函数代码
2010/05/31 Javascript
JavaScript代码复用模式实例分析
2012/12/02 Javascript
JS实现QQ图片一闪一闪的效果小例子
2013/07/31 Javascript
javascript显示用户停留时间的简单实例
2013/08/05 Javascript
鼠标拖动实现DIV排序示例代码
2013/10/14 Javascript
firefox浏览器用jquery.uploadify插件上传时报HTTP 302错误
2015/03/01 Javascript
javascript实现3D切换焦点图
2015/10/16 Javascript
jQuery.deferred对象使用详解
2016/03/18 Javascript
JavaScript将base64图片转换成formData并通过AJAX提交的实现方法
2016/10/24 Javascript
JS操作xml对象转换为Json对象示例
2017/03/25 Javascript
使用vue.js写一个tab选项卡效果
2017/03/25 Javascript
使用命令行工具npm新创建一个vue项目的方法
2017/12/27 Javascript
Vue项目查看当前使用的elementUI版本的方法
2018/09/27 Javascript
mapboxgl实现带箭头轨迹线的代码
2021/01/04 Javascript
Python图算法实例分析
2016/08/13 Python
一步步教你用python的scrapy编写一个爬虫
2019/04/17 Python
Pyqt助手安装PyQt5帮助文档过程图解
2020/11/20 Python
出门问问全球官方商城:Tichome音箱和TicWatch智能手表
2017/12/02 全球购物
Infababy英国:婴儿推车、Travel System婴儿车和婴儿汽车座椅销售
2018/05/23 全球购物
激光脱毛、蓝光和护肤:Tria Beauty
2019/03/28 全球购物
请解释一下webService? 如何用.net实现webService
2014/06/09 面试题
竞聘演讲稿范文
2014/01/12 职场文书
校园摄影活动策划方案
2014/02/05 职场文书
美术教师自我鉴定
2014/02/12 职场文书
2014学习全国两会精神心得体会2000字
2014/03/11 职场文书
有关环保的标语
2014/06/13 职场文书
2014年车间工作总结
2014/11/21 职场文书
电力安全教育培训心得体会
2016/01/11 职场文书
五年级作文之劳动作文
2019/11/12 职场文书
Filebeat 采集 Nginx 日志的方法
2021/03/31 Servers
如何在Python中妥善使用进度条详解
2022/04/05 Python