python 使用csv模块读写csv格式文件的示例


Posted in Python onDecember 02, 2020
import csv


class HandleCsv:
  '''
  csv文件处理类
  '''
  def __init__(self, filename):
    '''
    构造器
    :param filename: csv文件名
    '''
    self.filename = filename

  def get_data(self):
    '''
    获取csv中所有数据
    :return: 嵌套字典的列表
    '''
    with open(self.filename, mode='r', encoding='utf-8') as f:
      cb = csv.reader(f) # 实例化reader对象
      header = next(cb) # 获取表头,并将指针转向下一行
      list_dict = []
      for row in cb:
        list_dict.append(dict(zip(header, row)))
    return list_dict

  def get_one_row(self, row):
    '''
    获取单行数据
    :param row: 指定的行号
    :return: 对应行号的数据
    '''
    return self.get_data()[row - 1]

  def write_csv(self, headers, values, data_type, mode='w'):
    '''
    写入数据到csv到文件中
    :param headers: 表头:列表类型
    :param values: 表数据:1.嵌套元组的列表;2.嵌套字典的列表
    :param data_type: 传入的数据类型:1.'tuple';2.'dict'
    :param mode: 写入方式,默认写入“w”
    :return:
    '''
    with open(file=self.filename, mode=mode, encoding='utf-8', newline='') as f:
      if data_type == 'tuple':
        writer = csv.writer(f) # 实例化writer对象
        writer.writerow(headers) # 写入表头
        writer.writerows(values) # 写入数据
      elif data_type == 'dict':
        writer = csv.DictWriter(f, headers) # 实例化DictWriter对象
        writer.writeheader() # 写入表头
        writer.writerows(values) # 写入数据
      else:
        print("数据类型错误,请确认!")

以上就是python 使用csv模块读写csv格式文件的示例的详细内容,更多关于python 读写csv文件的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python中使用wxPython开发的一个简易笔记本程序实例
Feb 08 Python
使用Python生成url短链接的方法
May 04 Python
python分析网页上所有超链接的方法
May 08 Python
利用Python找出序列中出现最多的元素示例代码
Dec 08 Python
python 读取txt,json和hdf5文件的实例
Jun 05 Python
python批量从es取数据的方法(文档数超过10000)
Dec 27 Python
详解Python3中setuptools、Pip安装教程
Jun 18 Python
tensorflow estimator 使用hook实现finetune方式
Jan 21 Python
tensorflow使用L2 regularization正则化修正overfitting过拟合方式
May 22 Python
keras实现VGG16 CIFAR10数据集方式
Jul 07 Python
python json.dumps() json.dump()的区别详解
Jul 14 Python
python 如何调用 dubbo 接口
Sep 24 Python
python 发送邮件的四种方法汇总
Dec 02 #Python
如何用PyPy让你的Python代码运行得更快
Dec 02 #Python
python 实现波浪滤镜特效
Dec 02 #Python
python 如何对logging日志封装
Dec 02 #Python
python3中确保枚举值代码分析
Dec 02 #Python
python使用yaml 管理selenium元素的示例
Dec 01 #Python
python3处理word文档实例分析
Dec 01 #Python
You might like
php eval函数用法总结
2012/10/31 PHP
浅析php header 跳转
2013/06/17 PHP
ecshop添加菜单及权限分配问题
2017/11/21 PHP
关于Jqzoom的使用心得 jquery放大镜效果插件
2010/04/12 Javascript
js 调用本地exe的例子(支持IE内核的浏览器)
2012/12/26 Javascript
JS如何将UTC格式时间转本地格式
2013/09/04 Javascript
如何编写高质量JS代码
2014/12/28 Javascript
javascript实现点击按钮让DIV层弹性移动的方法
2015/02/24 Javascript
对比分析AngularJS中的$http.post与jQuery.post的区别
2015/02/27 Javascript
seajs模块之间依赖的加载以及模块的执行
2016/10/21 Javascript
jQuery实现鼠标滑过图片移动特效
2016/12/08 Javascript
基于Angular.js实现的触摸滑动动画实例代码
2017/02/19 Javascript
js判断输入框不能为空格或null值的实现方法
2018/03/02 Javascript
关于vue-router的那些事儿
2018/05/23 Javascript
js删除数组中某几项的方法总结
2019/01/16 Javascript
十分钟教你上手ES2020新特性
2020/02/12 Javascript
Vue 修改网站图标的方法
2020/12/31 Vue.js
[01:09]模型精美,特效酷炫!TI9不朽宝藏Ⅰ鉴赏
2019/05/10 DOTA
python字符串对其居中显示的方法
2015/07/11 Python
使用WingPro 7 设置Python路径的方法
2019/07/24 Python
香港钟表珠宝首饰商城:OneMallTime网摩间
2016/10/14 全球购物
小米旗下精品生活电商平台:小米有品
2018/12/18 全球购物
会计职业生涯规划书
2014/01/13 职场文书
保安拾金不昧表扬信
2014/01/15 职场文书
写自荐信三大法宝
2014/01/24 职场文书
日本语毕业生自荐信
2014/02/01 职场文书
企业宣传方案
2014/03/04 职场文书
食品安全处置方案
2014/06/14 职场文书
煤矿安全协议书
2014/08/20 职场文书
2014年助理工程师工作总结
2014/11/14 职场文书
2014年政协委员工作总结
2014/12/01 职场文书
上甘岭观后感
2015/06/10 职场文书
付款证明模板
2015/06/19 职场文书
2016年教师党员承诺书范文
2016/03/24 职场文书
sql字段解析器的实现示例
2021/06/23 SQL Server
深入理解go缓存库freecache的使用
2022/02/15 Golang