当我们需要从CSV文件中读取数据时,通常会用到Python的csv模块来实现。下面是使用Python读取CSV文件数据的详细攻略:
步骤1:导入csv模块
首先,我们需要导入Python的csv模块,该模块提供了读取CSV文件的方法。
import csv
步骤2:打开CSV文件并创建一个读取器
接下来需要打开CSV文件并创建一个读取器对象,以便读取CSV文件中的数据。
在这个过程中,你需要指定文件名和文件的打开模式。并且你还可以设置delimiter参数和quotechar参数。delimiter参数用于指定CSV文件中的分隔符,默认是逗号(,)。quotechar参数则用于指定CSV文件中的引号字符,默认是双引号(")。
with open('file.csv', 'r') as file:
reader = csv.reader(file, delimiter=',', quotechar='"')
步骤3:读取CSV文件中的数据并存储到数组中
用上述代码段得到读取器reader后,我们可以通过for循环读取CSV文件中的每一行数据,并将其存储到数组中。下面是一个示例:
data = [] # 定义一个数组,用于存储CSV文件中的数据
with open('file.csv', 'r') as file:
reader = csv.reader(file, delimiter=',', quotechar='"')
for row in reader:
data.append(row)
在上面的代码中,我们定义了一个data数组。然后使用for循环遍历读取器对象中的每一行数据,并将其作为一个列表添加到data数组中。
示例1
假设CSV文件的内容如下:
Name, Age, Gender
Tom, 20, Male
Mary, 25, Female
John, 30, Male
我们可以使用下面的代码读取该CSV文件中的数据:
import csv
data = [] # 定义一个数组,用于存储CSV文件中的数据
with open('example.csv', 'r') as file:
reader = csv.reader(file, delimiter=',', quotechar='"')
for row in reader:
data.append(row)
print(data)
输出:
[['Name', ' Age', ' Gender'],
['Tom', ' 20', ' Male'],
['Mary', ' 25', ' Female'],
['John', ' 30', ' Male']]
在输出结果中,我们可以看到一个包含四个列表(即四行数据)的data数组。
由于文件中每个数据都被包裹在双引号中,因此第一行的数据中Age和Gender之前有空格。可以用strip()方法去掉。
import csv
data = [] # 定义一个数组,用于存储CSV文件中的数据
with open('example.csv', 'r') as file:
reader = csv.reader(file, delimiter=',', quotechar='"')
for row in reader:
data.append([item.strip() for item in row])
print(data)
输出:
[['Name', 'Age', 'Gender'],
['Tom', '20', 'Male'],
['Mary', '25', 'Female'],
['John', '30', 'Male']]
示例2
假设现在有一个CSV文件,其中包含多行数据,每行数据都有多个字段,字段之间使用制表符分隔。文件名为“example2.csv”,内容如下:
ID Age Gender
001 20 Male
002 30 Female
003 25 Male
004 28 Female
我们可以使用下面的代码读取该CSV文件中的数据:
import csv
data = [] # 定义一个数组,用于存储CSV文件中的数据
with open('example2.csv', 'r') as file:
reader = csv.reader(file, delimiter='\t', quotechar='"')
for row in reader:
data.append(row)
print(data)
输出:
[['ID', 'Age', 'Gender'],
['001', '20', 'Male'],
['002', '30', 'Female'],
['003', '25', 'Male'],
['004', '28', 'Female']]
在这个示例中,我们通过设置delimiter参数为制表符来指定CSV文件中的分隔符,即"\t"。同时,我们还使用了自定义的引号字符,以便读取包含制表符的字段。
上述就是使用Python读取CSV文件数据到数组的攻略及两个示例。还有很多其他的技巧,可以根据实际需求进行调整。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 读取.csv文件数据到数组(矩阵)的实例讲解 - Python技术站