zoukankan      html  css  js  c++  java
  • python读取csv文件

    csv文件很方便读取。我们公司的运营部最近要面对新项目上线,需要导入很多数据批量到数据库中。无疑的,csv是个很好的选择。下面是我写的一个读取csv文件的方法,使用的是python2.7.5:

     1 #!/usr/bin/python
     2 # -*- coding: utf-8 -*-
     3 # @Date    : 2014-04-17
     4 # @Author  : yfl <yerugemimi@gmail.com>
     5 # @Link    : https://github.com/YeRuGeMiMi
     6 # @Version : 1.0
     7 
     8 #CSV文件的操作工具类
     9 #环境:python 2.7.5
    10 
    11 import os.path
    12 
    13 
    14 #csv_get_lines 读取CSV文件中指定行的数据,使用的是第一行是title的格式
    15 #param: csvfile csv文件路径
    16 #param:lines 读取指定行数
    17 #param: offset 开始行数
    18 #param: sign 分隔符
    19 #return: []
    20 def csv_get_lines(csvfile,lines,offset=0,sign=','):
    21     #判断文件是否存在
    22     if not os.path.exists(csvfile) :
    23         return False
    24     f=open(csvfile,'r')
    25     i=0
    26     j=0
    27     datas=[]
    28     for line in f :
    29         #读取title
    30         if i == 0:
    31             line=line.strip('
    ')
    32             titles=line.split(sign)
    33 
    34         #跳到指定的开始行
    35         i=i+1
    36         if i<offset :
    37             continue
    38         
    39         #以[{title:data,title:data,title:data}]的格式输出数据
    40         if j<lines :
    41             j=j+1
    42             line=line.strip('
    ')
    43             data=line.split(sign)
    44             #判断文件的格式是否正确
    45             if not len(titles) == len(data) :
    46                 return False
    47             
    48             datas.append(dict(zip(titles,data)))
    49 
    50     return datas

    这个方法对于格式的检查还是太差了,我仅仅只对数目进行了检查。恩,过个几天再增强一下。或许应该讲检查抽取成另一个方法。
    这个方法,我还用java实现了。就不贴出来,感兴趣的,可以访问我的github:

    https://github.com/YeRuGeMiMi

  • 相关阅读:
    开辟空间以存放一个结构体变量
    用结构体变量的引用作函数参数
    用指向结构体变量的指针作实参
    结构体变量作函数参数
    简单链表
    指向结构体变量的指针的应用
    结构体数组应用举例
    对候选人得票的统计程序
    引用结构体变量中的成员
    对三个变量按由小到大的顺序排序
  • 原文地址:https://www.cnblogs.com/chengxuyuanxiaoye/p/3688297.html
Copyright © 2011-2022 走看看