Python实现的tab文件操作类分享


Posted in Python onNovember 20, 2014

类代码:

# -*- coding:gbk -*-

import os

class TABFILE:
  def __init__(self, filename, dest_file = None):
    self.filename = filename
    if not dest_file:
      self.dest_file = filename
    else:
      self.dest_file = dest_file
    self.filehandle = None
    self.content = []
    self.initflag = False
    self.column = 0
    self.row = 0
    self.data = []
  def Init(self):
    try: 
      self.filehandle = open(self.filename, 'r')
      self.initflag = self._load_file()
    except: 
      pass
    else:
      self.initflag = True
    return self.initflag

  def UnInit(self):
    if self.initflag:
      self.filehandle.close()
    
  def _load_file(self):
    if self.filehandle:
      self.content = self.filehandle.readlines()
      self.row = len(self.content) - 1
      head = self.content[0].split('\t')
      self.column = len(head)
      for line in self.content:
        #这里需要去掉末尾的换行
        #line = line - '\n\r'
        self.data.append(line.rstrip().split('\t'))
      return True
    else:
      return False

  def GetValue(self, row, column):
    if 0 < row < self.row and 0 < column < self.column:
      return self.data[row][column - 1]
    else:
      return None

  def SetValue(self, row, column, value):
    if 0 < row < self.row and 0 < column < self.column:
      self.data[row][column] = value
    else:
      return False

  def SaveToFile(self):
    filewrite = open(self.dest_file, 'w')
    if not filewrite:
      return False
    sep_char = '\t'
    for line in self.data:
      filewrite.write(sep_char.join(line)+'\n')
    filewrite.close()
    return True
Python 相关文章推荐
python之wxPython应用实例
Sep 28 Python
简单实现python爬虫功能
Dec 31 Python
python导出chrome书签到markdown文件的实例代码
Dec 27 Python
Python递归实现汉诺塔算法示例
Mar 19 Python
Python中将变量按行写入txt文本中的方法
Apr 03 Python
Python 实现删除某路径下文件及文件夹的实例讲解
Apr 24 Python
Python多进程池 multiprocessing Pool用法示例
Sep 07 Python
python f-string式格式化听语音流程讲解
Jun 18 Python
Python上下文管理器类和上下文管理器装饰器contextmanager用法实例分析
Nov 07 Python
python通过opencv实现图片裁剪原理解析
Jan 19 Python
详解python中的异常和文件读写
Jan 03 Python
Python绘制散点图之可视化神器pyecharts
Jul 07 Python
Python实现的ini文件操作类分享
Nov 20 #Python
Python中列表、字典、元组、集合数据结构整理
Nov 20 #Python
python有证书的加密解密实现方法
Nov 19 #Python
Python采用socket模拟TCP通讯的实现方法
Nov 19 #Python
Python实现向QQ群成员自动发邮件的方法
Nov 19 #Python
python端口扫描系统实现方法
Nov 19 #Python
Python提示[Errno 32]Broken pipe导致线程crash错误解决方法
Nov 19 #Python
You might like
PHP 加密/解密函数 dencrypt(动态密文,带压缩功能,支持中文)
2009/01/30 PHP
PHP 上传文件的方法(类)
2009/07/30 PHP
php中时间轴开发(刚刚、5分钟前、昨天10:23等)
2011/10/03 PHP
php多用户读写文件冲突的解决办法
2013/11/06 PHP
PHP在网页中动态生成PDF文件详细教程
2014/07/05 PHP
PHP Laravel 上传图片、文件等类封装
2017/08/16 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
js实现拉幕效果的广告代码
2015/09/02 Javascript
两款JS脚本判断手机浏览器类型跳转WAP手机网站
2015/10/16 Javascript
jQuery实现图像旋转动画效果
2016/05/29 Javascript
浅谈angularjs module返回对象的坑(推荐)
2016/10/21 Javascript
js实现分页功能
2017/05/24 Javascript
实现一个完整的Node.js RESTful API的示例
2017/09/29 Javascript
使用Angular CLI快速创建Angular项目的一些基本概念和写法小结
2018/04/22 Javascript
vue form 表单提交后刷新页面的方法
2018/09/04 Javascript
jquery 时间戳转日期过程详解
2019/10/12 jQuery
低版本中Python除法运算小技巧
2015/04/05 Python
Python注释详解
2016/06/01 Python
Python编程之列表操作实例详解【创建、使用、更新、删除】
2017/07/22 Python
python 实现tar文件压缩解压的实例详解
2017/08/20 Python
Python 记录日志的灵活性和可配置性介绍
2018/02/27 Python
python使用Matplotlib画条形图
2020/03/25 Python
Python3调用百度AI识别图片中的文字功能示例【测试可用】
2019/03/13 Python
浅谈PYTHON 关于文件的操作
2019/03/19 Python
python3 常见解密加密算法实例分析【base64、MD5等】
2019/12/19 Python
django数据模型on_delete, db_constraint的使用详解
2019/12/24 Python
jupyter notebook 添加kernel permission denied的操作
2020/04/21 Python
在django admin中配置搜索域是一个外键时的处理方法
2020/05/20 Python
ETO男装官方网店:ETO Jeans
2019/02/28 全球购物
澳大利亚有机化妆品网上商店:The Well Store
2020/02/20 全球购物
求职推荐信
2013/10/28 职场文书
出纳试用期自我鉴定范文
2014/09/16 职场文书
2015年行政部工作总结
2015/04/28 职场文书
九九重阳节致辞
2015/07/31 职场文书
保外就医申请书范文
2015/08/06 职场文书
python+pyhyper实现识别图片中的车牌号思路详解
2022/12/24 Python