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

yipeiwu_com6年前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写的Tkinter程序屏幕居中方法

本文适用场景:想用Tkinter开发界面程序并屏幕居中,但没找到相应的API。 这两天玩了玩Tkinter,感觉不错,就是屏幕居中这个问题在网上搜了很长时间也没 找到答案,最后没办法,...

python3.6 +tkinter GUI编程 实现界面化的文本处理工具(推荐)

python3.6 +tkinter GUI编程 实现界面化的文本处理工具(推荐)

更新: 2017.07.17  补充滚动条、win批处理拉起py 2017.08.13  新增自定义图标 一、背景: 1.工作中自己及同事在查数据库、测试接口时需要对一些字符串或json...

使用Python实现毫秒级抢单功能

使用Python实现毫秒级抢单功能

目录: 引言 环境 需求分析&前期准备 淘宝购物流程回顾 秒杀的实现 代码梳理 总结 0 引言 年中购物618大狂欢开始了,各大电商又开始了大力...

理解Python垃圾回收机制

一.垃圾回收机制 Python中的垃圾回收是以引用计数为主,分代收集为辅。引用计数的缺陷是循环引用的问题。 在Python中,如果一个对象的引用数为0,Python虚拟机就会回收这个对象...

解决pip install的时候报错timed out的问题

安装包的时候报错,执行:pip install pyinstaller 问题: File "c:\python\python35\lib\site-packages\pip\_ven...