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笔记(1) 关于我们应不应该继续学习python
Oct 24 Python
理解Python中的With语句
Feb 02 Python
使用Python的判断语句模拟三目运算
Apr 24 Python
Python实现扫描局域网活动ip(扫描在线电脑)
Apr 28 Python
python删除过期文件的方法
May 29 Python
Python字典简介以及用法详解
Nov 15 Python
更新修改后的Python模块方法
Mar 03 Python
python用requests实现http请求代码实例
Oct 31 Python
Python模块的定义,模块的导入,__name__用法实例分析
Jan 07 Python
基于python 等频分箱qcut问题的解决
Mar 03 Python
python 爬虫如何实现百度翻译
Nov 16 Python
Python 虚拟环境工作原理解析
Dec 24 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
索尼SONY SRF-S83/84电路分析和打磨
2021/03/02 无线电
历史证明,懒惰才是推动科学发展技术进步的动力
2021/03/02 无线电
模拟OICQ的实现思路和核心程序(一)
2006/10/09 PHP
PHP 手机归属地查询 api
2010/02/08 PHP
使用GD库生成带阴影文字的图片
2015/03/27 PHP
php基于Snoopy解析网页html的方法
2015/07/09 PHP
PHP实现的一致性Hash算法详解【分布式算法】
2018/03/31 PHP
tp5框架前台无限极导航菜单类实现方法分析
2020/03/29 PHP
用函数式编程技术编写优美的 JavaScript
2006/11/25 Javascript
Javascript typeof 用法
2008/12/28 Javascript
用JS控制回车事件的代码
2011/02/20 Javascript
js写的方法实现上传图片之后查看大图
2014/03/05 Javascript
javascript实现动态统计图开发实例
2015/11/21 Javascript
ajax在兼容模式下失效的快速解决方法
2016/03/22 Javascript
JavaScript获取IP获取的是IPV6 如何校验
2016/06/12 Javascript
jQuery控制元素隐藏和显示
2017/03/03 Javascript
利用jquery去掉时光轴头尾部线条的方法实例
2017/06/16 jQuery
jQuery选择器之属性筛选选择器用法详解
2017/09/19 jQuery
node微信开发之获取access_token+自定义菜单
2019/03/17 Javascript
python通过urllib2获取带有中文参数url内容的方法
2015/03/13 Python
python基于multiprocessing的多进程创建方法
2015/06/04 Python
nohup后台启动Python脚本,log不刷新的解决方法
2019/01/14 Python
python列表每个元素同增同减和列表元素去空格的实例
2019/07/20 Python
python下载的库包存放路径
2020/07/27 Python
用Python实现职工信息管理系统
2020/12/30 Python
英国女鞋购物网站:Moda in Pelle
2019/02/18 全球购物
工商学院毕业生自荐信
2013/11/12 职场文书
办公室主任先进事迹
2014/01/18 职场文书
关于安全的广播稿
2014/10/23 职场文书
2015年百日安全活动总结
2015/03/26 职场文书
劳动者解除劳动合同通知书
2015/04/16 职场文书
2015年幼儿园中班工作总结
2015/04/25 职场文书
交通事故被告代理词
2015/05/23 职场文书
小学语文教学反思范文
2016/03/03 职场文书
通过shell脚本对mysql的增删改查及my.cnf的配置
2021/07/07 MySQL
Python pyecharts案例超市4年数据可视化分析
2022/08/14 Python