搜索指定网站内容(python获取csv文本指定数据的注意事项有哪些实战案例)
优采云 发布时间: 2021-09-19 04:19搜索指定网站内容(python获取csv文本指定数据的注意事项有哪些实战案例)
这一次,我们将为您介绍Python的方法来获取CSV文本的指定数据。Python获取CSV文本的指定数据有哪些注意事项?以下是一个实际案例。让我们一起来看看
CSV是逗号分隔值的缩写。它是以文本文件形式存储的表格数据,如下表:
它可以存储为CSV文件。该文件的内容包括:
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的所有内容:
import csv
with open('A.csv','rb') as csvfile:
reader = csv.reader(csvfile)
rows= [row for row in reader]
print rows
获取:
[['No.', 'Name', 'Age', 'Score'],
['1', 'Apple', '12', '98'],
['2', 'Ben', '13', '97'],
['3', 'Celia', '14', '96'],
['4', 'Dave', '15', '95']]
要提取其中一列,请使用以下代码:
import csv
with open('A.csv','rb') as csvfile:
reader = csv.reader(csvfile)
column = [row[2] for row in reader]
print column
获取:
['Age', '12', '13', '14', '15']
请注意,从CSV读取的所有数据都是STR类型。在这种方法中,您需要提前知道列的序列号。例如,年龄在第2列中,但不能根据标题“年龄”进行查询。在这种情况下,可以采用第二种方法:
第二种方法是使用听写器。与reader函数类似,它接收一个可迭代的对象并返回一个*敏*感*词*,但每个返回的单元格都放在字典的值中,字典的键是单元格标题(即列标题)。您可以通过以下代码查看dictreader的结构:
import csv
with open('A.csv','rb') as csvfile:
reader = csv.DictReader(csvfile)
column = [row for row in reader]
print column
获取:
[{'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的一列,我们可以使用列标题来查询:
import csv
with open('A.csv','rb') as csvfile:
reader = csv.DictReader(csvfile)
column = [row['Age'] for row in reader]
print column
你会得到:
['12', '13', '14', '15']
看了这个案例,我相信你已经掌握了这个方法。更多亮点请关注其他相关文章