当前位置:   article > 正文

常用python代码大全-python使用csv模块进行CSV文件操作_csv文件读取的逐行处理

csv文件读取的逐行处理

CSV文件是一种常见的数据存储格式,由逗号分隔的值组成。Python的csv模块提供了读取和写入CSV文件的功能。

以下是一个使用csv模块进行CSV文件操作的代码示例:

  1. import csv
  2. # 打开CSV文件
  3. with open('example.csv', 'r') as csvfile:
  4. # 创建CSV读取器
  5. reader = csv.reader(csvfile)
  6. # 逐行读取CSV文件内容
  7. for row in reader:
  8. # 输出每一行的内容
  9. print(row)

在上面的代码中,我们首先使用open()函数打开一个名为example.csv的CSV文件,并指定模式为'r',表示只读模式。然后,我们使用csv.reader()函数创建一个CSV读取器对象,该对象将用于逐行读取CSV文件的内容。接下来,我们使用一个for循环逐行读取CSV文件的内容,并使用print()函数输出每一行的内容。

除了读取CSV文件的内容,csv模块还提供了写入CSV文件的功能。下面是一个使用csv模块写入CSV文件的代码示例:

  1. import csv
  2. # 定义要写入CSV文件的数据
  3. data = [['Name', 'Age', 'Gender'],
  4. ['Alice', 25, 'Female'],
  5. ['Bob', 30, 'Male'],
  6. ['Charlie', 35, 'Male']]
  7. # 打开CSV文件
  8. with open('example.csv', 'w', newline='') as csvfile:
  9. # 创建CSV写入器
  10. writer = csv.writer(csvfile)
  11. # 写入数据到CSV文件
  12. writer.writerows(data)

在上面的代码中,我们首先定义了一个名为data的列表,其中包含了要写入CSV文件的数据。然后,我们使用open()函数打开一个名为example.csv的CSV文件,并指定模式为'w',表示写模式。此外,我们还指定了newline=''参数来避免在写入CSV文件时出现空行。接下来,我们使用csv.writer()函数创建一个CSV写入器对象,并使用writerows()方法将整个数据列表写入CSV文件中。最后,我们使用with语句来自动关闭文件句柄。

除了使用csv.writer()函数创建CSV写入器对象,还可以使用csv.DictWriter()函数创建字典写入器对象。该对象可以将数据以字典的形式写入CSV文件,其中字典的键将作为CSV文件的列名。下面是一个使用csv.DictWriter()函数的代码示例:

  1. import csv
  2. # 定义要写入CSV文件的数据
  3. data = [{'Name': 'Alice', 'Age': 25, 'Gender': 'Female'},
  4. {'Name': 'Bob', 'Age': 30, 'Gender': 'Male'},
  5. {'Name': 'Charlie', 'Age': 35, 'Gender': 'Male'}]
  6. # 打开CSV文件
  7. with open('example.csv', 'w', newline='') as csvfile:
  8. # 创建CSV写入器
  9. fieldnames = ['Name', 'Age', 'Gender']
  10. writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
  11. # 写入列名
  12. writer.writeheader()
  13. # 写入数据到CSV文件
  14. for row in data:
  15. writer.writerow(row)

在上面的代码中,我们首先定义了一个名为data的列表,其中包含了要写入CSV文件的数据。这些数据以字典的形式存储,其中字典的键将作为CSV文件的列名。然后,我们使用open()函数打开一个名为example.csv的CSV文件,并指定模式为'w',表示写模式。接下来,我们使用csv.DictWriter()函数创建一个字典写入器对象,并指定列名为fieldnames。然后,我们使用writeheader()方法将列名写入CSV文件中。最后,我们使用一个for循环逐行将数据写入CSV文件中。注意,在使用writerow()方法时,我们需要将整个字典作为参数传递给该方法。

除了写入CSV文件,csv模块还提供了其他一些有用的功能,例如使用csv.reader()函数逐行读取CSV文件,使用csv.writer()函数将数据写入CSV文件等。

另外,csv模块还支持各种自定义选项,例如指定分隔符、转义字符、引号字符等。这些选项可以在创建CSV读取器或写入器对象时指定。例如,下面是一个使用自定义分隔符的代码示例:

  1. import csv
  2. # 定义要写入CSV文件的数据
  3. data = [['Name', 'Age', 'Gender'],
  4. ['Alice', 25, 'Female'],
  5. ['Bob', 30, 'Male'],
  6. ['Charlie', 35, 'Male']]
  7. # 打开CSV文件
  8. with open('example.csv', 'w', newline='') as csvfile:
  9. # 创建CSV写入器,指定分隔符为分号
  10. fieldnames = ['Name', 'Age', 'Gender']
  11. writer = csv.DictWriter(csvfile, fieldnames=fieldnames, delimiter=';')
  12. # 写入列名
  13. writer.writeheader()
  14. # 写入数据到CSV文件
  15. for row in data:
  16. writer.writerow(row)

在上面的代码中,我们使用csv.DictWriter()函数创建了一个字典写入器对象,并指定分隔符为分号。然后,我们将数据写入CSV文件中。使用自定义分隔符可以让我们更灵活地处理不同的CSV文件格式。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/835788
推荐阅读
相关标签
  

闽ICP备14008679号