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('\n')
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('\n')
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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM