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实现向ppt文件里插入新幻灯片页面的方法
Apr 28 Python
Python的Flask开发框架简单上手笔记
Nov 16 Python
Python存取XML的常见方法实例分析
Mar 21 Python
Python的条件表达式和lambda表达式实例
Jan 31 Python
python opencv 二值化 计算白色像素点的实例
Jul 03 Python
如何使用python爬虫爬取要登陆的网站
Jul 12 Python
Python学习笔记之lambda表达式用法详解
Aug 08 Python
python打印异常信息的两种实现方式
Dec 24 Python
使用Python求解带约束的最优化问题详解
Feb 11 Python
Python虚拟环境的创建和包下载过程分析
Jun 19 Python
使用Python+Appuim 清理微信的方法
Jan 26 Python
python编写扎金花小程序的实例代码
Feb 23 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 FTP类的详解
2013/06/13 PHP
php获取从html表单传递数组的方法
2015/03/20 PHP
Yii2创建控制器(createController)方法详解
2016/07/23 PHP
PHP使用星号替代用户名手机和邮箱的实现代码
2018/02/07 PHP
accesskey 提交
2006/06/26 Javascript
node在两个div之间移动,用ztree实现
2013/03/06 Javascript
浅析node.js中close事件
2014/11/26 Javascript
jQuery后代选择器用法实例
2014/12/23 Javascript
详细总结Javascript中的焦点管理
2016/09/17 Javascript
AngularJS中过滤器的使用与自定义实例代码
2016/09/17 Javascript
详解JS中的快速排序与冒泡
2017/01/10 Javascript
ES6扩展运算符的用途实例详解
2017/08/20 Javascript
vue 实现通过手机发送短信验证码注册功能
2018/04/19 Javascript
原生js实现日期选择插件
2020/05/21 Javascript
JavaScript文档加载模式以及元素获取
2020/07/28 Javascript
openlayers实现图标拖动获取坐标
2020/09/25 Javascript
[01:32:22]DOTA2-DPC中国联赛 正赛 Ehome vs VG BO3 第一场 2月5日
2021/03/11 DOTA
python搭建简易服务器分析与实现
2012/12/15 Python
python中scikit-learn机器代码实例
2018/08/05 Python
pygame游戏之旅 添加碰撞效果的方法
2018/11/20 Python
Python对HTML转义字符进行反转义的实现方法
2019/04/28 Python
python SQLAlchemy 中的Engine详解
2019/07/04 Python
python基于TCP实现的文件下载器功能案例
2019/12/10 Python
关于windows下Tensorflow和pytorch安装教程
2020/02/04 Python
Python轻量级web框架bottle使用方法解析
2020/06/13 Python
python实现图书馆抢座(自动预约)功能的示例代码
2020/09/29 Python
使用Django的JsonResponse返回数据的实现
2021/01/15 Python
使用 css3 transform 属性来变换背景图的方法
2019/05/07 HTML / CSS
HTML5 File API改善网页上传功能
2009/08/19 HTML / CSS
英国豪华装饰照明品牌的在线零售商:Inspyer Lighting
2019/12/10 全球购物
大学生文员专业个人求职信范文
2014/01/05 职场文书
毕业自我评价
2014/02/05 职场文书
简历中的自我评价范文
2014/02/05 职场文书
高中课程设置方案
2014/05/28 职场文书
社区巾帼文明岗事迹材料
2014/06/03 职场文书
2016北大自主招生自荐信模板
2016/01/28 职场文书