下面是详细讲解“Python 3.x对.CSV数据按任意行、列读取的过程”的完整攻略。
1. 读取CSV文件
在Python中,可以使用csv模块来读取CSV文件。使用csv模块,我们需要先导入它:
import csv
接着,我们可以通过csv.reader函数来读取CSV文件并转换成列表形式。例如,我们要读取名为example.csv的文件,代码如下:
with open('example.csv', newline='', encoding='utf-8') as csvfile:
reader = csv.reader(csvfile)
for row in reader:
print(row)
在上述代码中,语句with open(...) as csvfile可以打开名为example.csv的CSV文件,并设置编码方式为utf-8。接着,我们使用csv模块的reader函数来读取CSV文件,并将其存储在名为reader的变量中。最后,我们可以使用for循环遍历reader中的每一行数据,并打印输出。
2. 按行读取CSV数据
我们可以通过下标来读取CSV文件中的任意一行。例如,我们要读取example.csv文件的第三行数据,代码如下:
with open('example.csv', newline='', encoding='utf-8') as csvfile:
reader = csv.reader(csvfile)
rows = list(reader)
print(rows[2])
在这里,使用csv模块的reader函数将整个CSV文件存储在变量reader中,然后使用list()函数将reader转换为列表形式,并将其存储在变量rows中。最后,我们可以按照下标的方式访问rows列表中的任意一行,并通过print()函数输出。
3. 按列读取CSV数据
如果要按列读取CSV文件中的数据,需要先将CSV数据转换为字典形式。可以使用csv模块的DictReader函数来实现。例如,我们要读取example.csv文件的第二列数据,代码如下:
with open('example.csv', newline='', encoding='utf-8') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
print(row['Col2'])
在这里,使用csv模块的DictReader函数将整个CSV文件按字典形式存储在变量reader中。接着,使用for循环遍历reader中的每一行数据,并按照字典的key值来访问每一列数据。在这里,我们输出了每一行数据的第二列,即Col2列。
示例说明
下面我们来举一些例子来进一步说明如何按任意行、列读取CSV数据。
示例一
我们有一个名为example.csv的CSV文件,其内容如下:
Name, Age, Gender
Tom, 20, M
Lucy, 18, F
John, 22, M
现在我们要读取第二行数据(即Lucy, 18, F),代码如下:
with open('example.csv', newline='', encoding='utf-8') as csvfile:
reader = csv.reader(csvfile)
rows = list(reader)
print(rows[1])
输出结果为:['Lucy', ' 18', ' F']
示例二
接下来我们要读取example.csv文件的第一列数据,代码如下:
with open('example.csv', newline='', encoding='utf-8') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
print(row['Name'])
输出结果为:
Tom
Lucy
John
以上就是Python 3.x对.CSV数据按任意行、列读取的完整攻略,希望对你有所帮助!
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python 3.x对.CSV数据按任意行、列读取的过程 - Python技术站