Python实现读取并保存文件的类

yipeiwu_com5年前Python基础

本文实例讲述了Python实现读取并保存文件的类。分享给大家供大家参考,具体如下:

这个类写在一个叫class_format.py 的文件里, 放在D盘

>>> import os
>>> os.chdir("D:\\")
>>> os.getcwd()
'D:\\'
>>> os.listdir(".")
......

有一个testcsv.txt 文件放在D盘,内容如下(oi的两边有空格):

1
100
3000
56
34
23
 oi 

这个代码的ReadData模块用到了csv.reader这个方法,delimiter='\n' 表示分隔符为换行符,quotechar=" " 表示引用字符为空格,quoting=csv.QUOTE_NONNUMERIC 表示,reader把未引用的区域转换为float类型, writer把非数值的字段用字符引用。

参考:https://docs.python.org/3/library/csv.html

这个模块使用方法:

>>> from class_format import FormatData
>>> myInstance = FormatData()
>>> read_material = myInstance.ReadData("testcsv.txt")
Data read!
>>> read_material
[1.0, 100.0, 3000.0, 56.0, 34.0, 23.0, 'oi']
>>> result = myInstance.SaveData("resultcsv.txt",read_material)
Data saved!

这样testcsv.txt中的内容就被写入 resultcsv.txt文件中了

代码如下:

#!/usr/bin/python
""" Chapter 15 of Beginning Programming With Python - For Dummies   """
import csv
class FormatData:
  def __init__(self, Name="",Age=0, Using_Vim=False):
    self.Name = Name
    self.Age = Age
    self.VimUser = Using_Vim
  def __str__(self):
    OutString = "'{0}', {1}, {2}".format(self.Name, self.Age, self.VimUser)
    return OutString
  def SaveData(self, Filename = "", DataList = []):
    with open(Filename, "w") as csvfile:
      DataWriter = csv.writer(csvfile, delimiter='\n',quotechar=" ",quoting=csv.QUOTE_NONNUMERIC)
      DataWriter.writerow(DataList)
      csvfile.close()
      print("Data saved!")
  def ReadData(self,Filename=""):
    with open(Filename, "r") as csvfile:
      DataReader = csv.reader(csvfile, delimiter='\n',quotechar=" ",quoting=csv.QUOTE_NONNUMERIC)
      Output = []
      for Item in DataReader:
        Output.append(Item[0])
      csvfile.close()
      print("Data read!")
      return Output

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python URL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python中的并发处理之asyncio包使用的详解

导语:本文章记录了本人在学习Python基础之控制流程篇的重点知识及个人心得,打算入门Python的朋友们可以来一起学习并交流。 本文重点: 1、了解asyncio包的功能和使用方法;...

python 解压pkl文件的方法

如下所示: import pickle with open(filename, 'rb') as f: datadict = pickle.load(f, encoding='la...

PyQt5 QSerialPort子线程操作的实现

环境: python3.6 pyqt5 只是简单的一个思路,请忽略脆弱的异常防护: # -*- coding: utf-8 -*- import sys from PyQt5....

python开发之for循环操作实例详解

本文实例讲述了python开发之for循环操作。分享给大家供大家参考,具体如下: 下面是我做的一些学习记录供大家参考: #基本的for循环语句 test_list = [2,"Jon...

详解python 3.6 安装json 模块(simplejson)

JSON 相关概念: 序列化(Serialization):将对象的状态信息转换为可以存储或可以通过网络传输的过程,传输的格式可以是JSON,XML等。反序列化就是从存储区域(JSON,...