本文摘自php中文网,作者php中世界最好的语言,侵删。
这次给大家带来python获取csv文本指定数据方法,python获取csv文本指定数据的注意事项有哪些,下面就是实战案例,一起来看一下。csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据,比如如下的表格:

就可以存储为csv文件,文件内容是:
1 2 3 4 5 | No.,Name,Age,Score
1,Apple,12,98
2,Ben,13,97
3,Celia,14,96
4,Dave,15,95
|
假设上述csv文件保存为"A.csv",如何用Python像操作Excel一样提取其中的一列,即一个字段,利用Python自带的csv模块,有两种方法可以实现:
第一种方法使用reader函数,接收一个可迭代的对象(比如csv文件),能返回一个生成器,就可以从其中解析出csv的内容:比如下面的代码可以读取csv的全部内容,以行为单位:
1 2 3 4 5 | import csv
with open( 'A.csv' , 'rb' ) as csvfile:
reader = csv.reader(csvfile)
rows= [row for row in reader]
print rows
|
得到:
1 2 3 4 5 | [[ 'No.' , 'Name' , 'Age' , 'Score' ],
[ '1' , 'Apple' , '12' , '98' ],
[ '2' , 'Ben' , '13' , '97' ],
[ '3' , 'Celia' , '14' , '96' ],
[ '4' , 'Dave' , '15' , '95' ]]
|
要提取其中某一列,可以用下面的代码:
1 2 3 4 5 | import csv
with open( 'A.csv' , 'rb' ) as csvfile:
reader = csv.reader(csvfile)
column = [row[2] for row in reader]
print column
|
得到:
1 | [ 'Age' , '12' , '13' , '14' , '15' ]
|
注意从csv读出的都是str类型。这种方法要事先知道列的序号,比如Age在第2列,而不能根据'Age'这个标题查询。这时可以采用第二种方法:
第二种方法是使用DictReader,和reader函数类似,接收一个可迭代的对象,能返回一个生成器,但是返回的每一个单元格都放在一个字典的值内,而这个字典的键则是这个单元格的标题(即列头)。用下面的代码可以看到DictReader的结构:
1 2 3 4 5 | import csv
with open( 'A.csv' , 'rb' ) as csvfile:
reader = csv.DictReader(csvfile)
column = [row for row in reader]
print column
|
得到:
1 2 3 4 | [{ 'Age' : '12' , 'No.' : '1' , 'Score' : '98' , 'Name' : 'Apple' },
{ 'Age' : '13' , 'No.' : '2' , 'Score' : '97' , 'Name' : 'Ben' },
{ 'Age' : '14' , 'No.' : '3' , 'Score' : '96' , 'Name' : 'Celia' },
{ 'Age' : '15' , 'No.' : '4' , 'Score' : '95' , 'Name' : 'Dave' }]
|
如果我们想用DictReader读取csv的某一列,就可以用列的标题查询:
1 2 3 4 5 | import csv
with open( 'A.csv' , 'rb' ) as csvfile:
reader = csv.DictReader(csvfile)
column = [row[ 'Age' ] for row in reader]
print column
|
就得到:
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
阅读剩余部分
相关阅读 >>
关于Python中布局操作以及模块结构的详解
Python中实现指定时间调用函数的方法讲解
Python32位和64位有什么区别
Python运算符优先级有哪些
Python用openpyxl读写excel的实例教程
从此驾驭图表的神器matplotlib,Python强大的作图工具
Python自学文件操作
mac怎么安装Python
Python脚本是什么
介绍Python 数据抓取三种方法
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » python获取csv文本指定数据方法