python中的CSV 工具类

2023-11-10

CSV工具类是Python中的自带包,用来解析CSV文件。

  1. 实例化一个CSV对象,需要传入一个CSV文件的路径
with open('./case.csv') as casefile
  1. csv.DictReader() 将CSV读取成字典的形式
rows2 = csv.DictReader(casefile)
print rows2
# [{'paxID': '111', 'daxID': '222', 'merID': '333'}, {'paxID': '444', 'daxID': '555', 'merID': '666'}]
  1. 取一个值
rows2[rowNum][colunmName]
print rows2[2]['paxID']
#444
  1. csv.reader() 将CSV读取成list
rows = csv.reader(casefile)
row_list = [row for row in rows]
        print row_list
# [['paxID', 'daxID', 'merID'], ['111', '222', '333'], ['444', '555', '666']]
  1. 封装一个csv 工具类
#coding=UTF-8
import csv
import traceback

class CSV:
    def __init__(self,filePath):
        self.filePath = filePath
        self.allRows = None
        try:
            with open(self.filePath) as csvfile:
                rows = csv.DictReader(csvfile)
                self.allRows = [row for row in rows]
        except:
            traceback.print_exc()

    def getAll(self):
        return self.allRows

    def getCell(self, rowNum, colunmName):
        cell = ''
        if rowNum > 0 and colunmName != None:
            try:
                cell = self.allRows[rowNum-1][colunmName]
            except:
                print 'colunmName is inexistent'
        else:
            print 'rowNum should begin from 1 or colunmName is invalid'
        return cell

    #取csv的标题行,字典中的keys
    def getFirstRow(self):
        try:
            dict1 = self.allRows[0]
            keys = dict1.keys()
        except:
            traceback.print_exc()
        return keys

    #取某一纵列的值
    def getColunmName(self, name):
        #创建一个数组,循环大数据,每个字典取Key是name的值,追加到数组中,返回
        result = None
        for d in self.allRows:
            try:
                result.append(d[name])
            except:
                traceback.print_exc()
        return result
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python中的CSV 工具类 的相关文章

  • 将 CSV 复制到 Amazon RDS 托管的 Postgresql 数据库

    我有一个使用 Amazon 的 RDS 服务托管的数据库 我正在尝试编写一个 Web 服务来更新所述数据库 我遇到的问题是它不允许我使用 COPY 命令 因为我收到此错误 错误 必须是超级用户才能复制到文件或从文件复制 我正在使用我为数据库
  • Cypher Neo4j 无法加载外部资源

    在 Windows 环境中 我尝试加载带有以下语句的 csv 文件 LOAD CSV WITH HEADERS FROM file E Neo4j customers csv AS row 它似乎无法正常工作并返回 无法加载外部资源 文件
  • NumPy genfromtxt:正确使用filling_missing

    我正在尝试处理保存到 CSV 的数据 这些数据可能在未知数量的列 最多大约 30 列 中缺少值 我正在尝试使用将这些缺失值设置为 0 genfromtxt s filling missing争论 这是在 Win 7 上的 ActiveSta
  • 使用 FileSystemObject 读取和写入 csv 文件

    是否可以使用 VBA 中的 FileSystemObject 读取和写入 csv 文件 必然是 基本语法如 Set objFSO CreateObject scripting filesystemobject create a csv fi
  • Python CSV Writer 在文件末尾留下一个空行

    以下代码在 txt 文件末尾留下一个空白行 我怎样才能不让 writerows 不终止最后一行 with open fname wb as myFile Start the CSV Writer wr csv writer myFile d
  • 降低计算精度以加快执行速度

    我有一个数据采集系统 可以进行几分钟的测量并生成一个包含 1000 万行和 10 列的 csv 文件 然后我在Python csv reader 中导入这个csv文件 对获取的数值数据执行一系列操作 但一次 只能 10000行 否则计算机内
  • 无法将包含数据的大型 CSV 文件转换为 mysql 数据库[重复]

    这个问题在这里已经有答案了 如何将大型文本文件转换为mysql数据库 文件大小3GB 1100万行 文件中的每一行都是这样的 1303179444 20 5811 Ahmed Al Emam male ahmed e alemam ahme
  • pandas read_csv 之前预处理数据文件

    我使用 SAP 的数据输出 但它既不是 CSV 因为它不引用包含其分隔符的字符串 也不是固定宽度 因为它具有多字节字符 它是一种 固定宽度 字符 为了将其放入 pandas 我当前读取文件 获取分隔符位置 对分隔符周围的每一行进行切片 然后
  • 使用 python 从 CSV 创建字典

    我有一个 CSV 格式的文件 其中 A B 和 C 是标题 我如何以Python方式将此CSV转换为以下形式的字典 A 1 B 4 C 7 A 2 B 5 C 8 A 3 B 6 C 9 到目前为止我正在尝试以下代码 import csv
  • 我应该使用 AWK 或 SED 删除 CSV 文件中引号之间的逗号吗? (重击)

    我有一堆日常打印机登录CSV格式 我正在编写一个脚本来跟踪使用了多少纸张并将信息保存到数据库中 但我遇到了一个小问题 本质上 日志中的一些文档名称中包含逗号 全部用双引号引起来 并且由于它采用逗号分隔格式 所以我的代码搞乱了并将所有内容推到
  • 无法在WordPress的functions.php中使用php fopen()函数

    我正在尝试简单地运行 fopen 函数 php 并且也尝试过test phpWordPress 模板文件 但这不起作用 如果我将 test php 文件和 csv 文件移动到主题文件夹之外的位置 那么它第一次可以工作 function cs
  • 如何定义导入mongodb的分隔符

    我有一个数据集合 它由 特点 我将把数据收集添加到mongodb 所以我需要通过分离数据 特点 怎么样我的蒙戈进口公司命令看起来像 之前我已经成功导入csv通过以下命令创建文件 mongoimport d mydb c things typ
  • 将对象列表写入 csv 文件

    我正在编写一个 python 程序 该程序循环遍历 reddit 提交 提取数据并将其作为对象存储在列表中 但是 我无法将该列表写入 csv 文件 文件已创建 但它只是为对象提供某种 id 标记 我应该如何更改 csv 代码 Code im
  • OpenFileDialog 无法加载 CSV 文件,但可以加载 xls/xlsx Excel 文件 [重复]

    这个问题在这里已经有答案了 在我的 Windows 窗体应用程序中加载 Excel 文件时 我可以加载 xls and xlsx格式很好 但是当我选择一个 CSV我收到以下错误 System NullReferenceException 未
  • Spark 2.1无法在CSV上写入Vector字段

    当我将代码从 Spark 2 0 迁移到 2 1 时 我偶然发现了与 Dataframe 保存相关的问题 这是代码 import org apache spark sql types import org apache spark ml l
  • 循环访问多个 CSV 文件并生成多个输出

    我正在编写一些 python 脚本 它打开 csv 文件 定义数据帧 运行一些分析 例如聚合数据 拆分列 查找平均值等 并将分析的输出绘制在图表上 输出将是一个图形 png 文件 和一个 csv 文件 并在原始文件名末尾添加单词 ANALY
  • CSV.foreach 未读取 CSV 文件中的第一列

    第一次学习Ruby来自动清理一些CSV文件 我已经设法从其他 SO 问题中拼凑出下面的脚本 但由于某种原因 该脚本没有读取原始 CSV 文件的第一列 如果我添加一个虚拟的第一列 一切都会完美运行 我缺少什么 require csv COLU
  • 如何在不加载到内存的情况下对大型 csv 文件进行排序

    我有 20GB csv 文件 如下所示 CallId MessageNo Information Number 1000 1 a 2 99 2 bs 3 1000 3 g 4 66 2 a 3 20 16 3 b 1000 7 c 4 99
  • MySQL 导入 125000 行 CSV 的最快方法?

    这是我第一次使用 MySQL 除了对现有数据库进行一些基本查询之外 所以我不擅长解决这个问题 我有一个包含 125 000 条记录的 CSV 我想将其加载到 MySQL 中 我安装了版本 8 和工作台 我使用导入向导加载 CSV 它开始导入
  • 有谁知道一种更快的方法来执行 String.Split() 吗?

    我正在读取 CSV 文件的每一行 并且需要获取每一列中的各个值 所以现在我只是使用 values line Split delimiter where line是保存由分隔符分隔的值的字符串 衡量我的表现ReadNextRow我注意到它花费

随机推荐

  • 【剑指Offer题解:java】从上往下打印二叉树

    题目 从上往下打印出二叉树的每个节点 同层节点从左至右打印 分析 初始化 一个队列Queue queue 将root节点入队列queue 如果队列不空 做如下操作 弹出队列头 保存为node 将node的左右非空子节点加入队列 做2 3步骤
  • Zimbra安装成功后,邮件发送失败!!急!!发生错误 (mail.TRY_AGAIN),原因不详。

    method unknown msg try again Unable to connect to the MTA code mail TRY AGAIN detail soap Receiver trace com zimbra cs m
  • Less-27and27a

    文章目录 1 思路分析 2 注入过程 3 27a 1 思路分析 这一关表上上告诉你他只是过滤了union和select 其实不然 function blacklist id id preg replace id strip out id p
  • MQ-2烟雾报警器

    MQ 2烟雾报警器 原理 MQ 2型烟雾传感器属于二氧化锡半导体气敏材料 属于表面离子式N型半导体 处于200 300摄氏度时 二氧化锡吸附空气中的氧 形成氧的负离子吸附 使半导体中的电子密度减少 从而使其电阻值增加 当与烟雾接触时 如果晶
  • 传输线阻抗理论

    一 理想元件阻抗特性 对于所有的理想元件 传输线 阻抗 为该导体两端的电压和流经该导体的电流的比值 一般包括阻抗 感抗和容抗的统称 电阻阻抗 电感感抗 电容容抗 显然 对于理想电感和电容 其阻抗和频率有关 理想电感器的阻抗随频率升高而增大
  • maven手动引入仓库文件操作

    捕获 jpg 一 idea打开maven命令窗口 在框里输入命令 mvn install install file DgroupId com elink web DartifactId jcifs Dversion 1 3 15 SNAPS
  • 【2021年全国大学生数学建模竞赛题】“生产企业原材料的订购与运输”详细解析(内附MATLAB代码)

    2021年全国大学生数学建模竞赛题 生产企业原材料的订购与运输 详细解析 内附MATLAB代码 文章目录 1 模型建立 1 1确定被评判对象的对象集及因素集 1 2确定各评价指标权重 1 3建立相对模糊及对因素的偏差加权平均 1 4根据Fj
  • Android APK安装完成自动删除安装包

    需要实现此功能 一般实际开发是在自动版本更新上 当更新完开始自动安装完毕后 删除内存卡里的安装包 实现方式很简单 监听应用广播 获取内存卡下的文件 删除 1 监听广播 java view plain copy package com exa
  • 数据库系统原理课程总结8——备份与日志初步、并发模拟实验

    一 备份与日志初步实验 1 了解你所使用的数据库平台的单表数据备份和整库备份方法 进行相应备份操作 并尝试利用备份数据在另一个机器上恢复数据 并在实验报告中描述上述过程 答 首先 在MySQL中使用mysqldump将数据库的单表数据以sq
  • Hutool(Excel工具使用)

    Hutool Excel工具使用 官方文档Hutool 目录 基本依赖的导入 Writer方法的使用 1 1 写出List数据 1 2 写出Map数据 1 3 写出我们的Bean对象 1 4 自定义Bean的key别名 1 5 写出到IO流
  • LeetCode-116.填充每个节点的下一个右侧节点指针、深度优先搜索

    题目分析 广度优先搜索 题目要求把二叉树中每一层的的节点连起来 最简单的方法即 BFS 按层的顺序的对树进行遍历 但需要使用 queue 数据结构 空间复杂度为 O N 不符合题目要求 深度优先搜索 由于 next 指针的存在 可以实现对二
  • Unity WorldToScreenPoint坐标变换

    功能 实现标签跟随物体运动 标签是一个Prefab 由底图和文字组成 Dota2中英雄血条的实现也是这种原理 说到底就是标签根据物体位置不间断刷新自己的坐标值 3D gt 2D gt 3D 先来了解一下Unity D中的坐标系统 1 Wor
  • 前台页面上传data image图片,java后台接收图片保存

    最近在项目中有这么一个需求 就是上传一个视频文件 然后要获取视频文件的第一帧图片 这个可以通过canvas获取得到 得到的是一个dataURL 之后还要将这个图片上传到云 这个时候如何操作就不清楚了 于是乎 google一番 总结如下 将d
  • Redis源码分析(三)—— 字典的设计与实现

    前言 字典是一种用于保存键值对的数据结构 Redis数据库使用字典做为底层实现 字典也是哈希键的底层实现之一 C语言中并没有内置字典这个数据结构 Redis自己实现了字典 以下结合源码分析Redis字典的设计与实现 源码版本 Redis 6
  • java执行linux命令:head -n 80 /dev/urandom

    看了微信小程序api后 发现登录Logo接口需要处理随机key 所以着手处理了一下 直接贴代码 先运行命令 让其生成168位随机数 private static String wxSessionkey F3UENUg3JcI31O2RpoB
  • weex实现带有跟手动画的tab栏

    在weex开发的群中看到有人提到这个问题 就想着去实现以下 还不是很完美 只支持一屏的tab栏内容 后续会进行优化 2019 6 20 更新 已支持滚动跟手 可以超出屏幕 2019 6 23 更新 解决子元素包含滚动标签时无法滑动切换的问题
  • Poppuwindow的简单使用

    继 DialogFragment的简单使用 之后 我们再来试试 Poppuwindow 的简单使用 切记 本篇博客只能保证你入门哦 适合小白学习 效果展示 1 几个常用的构造方法 public PopupWindow Context con
  • 什么是压力测试?如何进行Jmeter压力测试

    一 什么是压力测试 软件测试中 压力测试 Stress Test 也称为强度测试 负载测试 压力测试是模拟实际应用的软硬件环境及用户使用过程的系统负荷 长时间或超大负荷地运行测试软件 来测试被测系统的性能 可靠性 稳定性等 常用的压力测试软
  • 因果学习论文阅读

    论文阅读 因果机器学习的前沿进展综述 Overview of the Frontier Progress of Causal Machine Learning 因果概念 提出因果旨在解决虚假相关的问题 相关只需要保持两个变量的分布相同 而因
  • python中的CSV 工具类

    CSV工具类是Python中的自带包 用来解析CSV文件 实例化一个CSV对象 需要传入一个CSV文件的路径 with open case csv as casefile csv DictReader 将CSV读取成字典的形式 rows2