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实现遍历目录的方法【测试可用】
Mar 22 Python
Python sqlite3事务处理方法实例分析
Jun 19 Python
python实现读Excel写入.txt的方法
Apr 29 Python
Python之lambda匿名函数及map和filter的用法
Mar 05 Python
pytorch sampler对数据进行采样的实现
Dec 31 Python
基于pygame实现童年掌机打砖块游戏
Feb 25 Python
pandas数据处理之绘图的实现
Jun 15 Python
如何用Matplotlib 画三维图的示例代码
Jul 28 Python
Python基于gevent实现文件字符串查找器
Aug 11 Python
python在CMD界面读取excel所有数据的示例
Sep 28 Python
Pandas替换及部分替换(replace)实现流程详解
Oct 12 Python
matplotlib绘制鼠标的十字光标的实现(自定义方式,官方实例)
Jan 10 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实现通用的从数据库表读取数据到数组的函数实例
2015/03/21 PHP
PHP多维数组转一维数组的简单实现方法
2015/12/23 PHP
smarty学习笔记之常见代码段用法总结
2016/03/19 PHP
Windows服务器中PHP如何安装redis扩展
2019/09/27 PHP
Yii 框架控制器创建使用及控制器响应操作示例
2019/10/14 PHP
jquery URL参数判断,确定菜单样式
2010/05/31 Javascript
解决IE6的PNG透明JS插件使用介绍
2013/04/17 Javascript
点击按钮或链接不跳转只刷新页面的脚本整理
2013/10/22 Javascript
jquery选择checked在ie8普通模式下的问题
2014/02/12 Javascript
Node.js插件的正确编写方式
2014/08/03 Javascript
javascript获取wx.config内部字段解决微信分享
2016/03/09 Javascript
开源免费天气预报接口API及全国所有地区代码(国家气象局提供)
2016/12/26 Javascript
遍历json获得数据的几种方法小结
2017/01/21 Javascript
js学习总结_选项卡封装(实例讲解)
2017/07/13 Javascript
全面解析jQuery中的$(window)与$(document)的用法区别
2017/08/15 jQuery
用vue构建多页面应用的示例代码
2017/09/20 Javascript
全面解析vue router 基本使用(动态路由,嵌套路由)
2018/09/02 Javascript
jQuery实现模拟搜索引擎的智能提示功能简单示例
2019/01/27 jQuery
Vue组件通信中非父子组件传值知识点总结
2019/12/05 Javascript
scrapy爬虫完整实例
2018/01/25 Python
Python 实现还原已撤回的微信消息
2019/06/18 Python
关于PyTorch源码解读之torchvision.models
2019/08/17 Python
在python里使用await关键字来等另外一个协程的实例
2020/05/04 Python
详解Pandas 处理缺失值指令大全
2020/07/30 Python
HTML5无刷新改变当前url的代码
2017/03/15 HTML / CSS
计算机工程学院个人求职信
2013/10/05 职场文书
个人简历中的自我评价范例
2013/10/29 职场文书
全民健身日活动方案
2014/01/29 职场文书
创业计划书的写作技巧及要点
2014/01/31 职场文书
幼儿园小班家长寄语
2014/04/02 职场文书
中学生操行评语大全
2014/04/24 职场文书
实施意见格式范本
2015/06/05 职场文书
2016年中秋祝酒词
2015/11/26 职场文书
2019学生会干事辞职信
2019/06/27 职场文书
pycharm无法导入lxml的解决办法
2021/03/31 Python
一文弄懂MySQL索引创建原则
2022/02/28 MySQL