📜  名称“csv”未定义 - Python (1)

📅  最后修改于: 2023-12-03 14:50:40.824000             🧑  作者: Mango

名称“csv”未定义 - Python

在使用Python操作CSV文件时,有时候会遇到“名称‘csv’未定义”的错误。这是因为在使用csv模块之前没有导入它。

导入csv模块

要解决这个问题,我们需要导入Python内置的csv模块。可以使用以下代码导入csv模块:

import csv

这条语句将使Python程序中的csv模块可用,从而可以使用它提供的各种函数和方法。

CSV文件操作

在使用csv模块之后,可以使用以下方法来操作CSV文件:

  • csv.reader():用于从CSV文件中读取数据,返回一个迭代器对象,可以使用for循环来遍历数据。
  • csv.writer():用于将数据写入CSV文件中,返回一个writer对象,然后可以使用writerow()方法来一行一行地写入数据。
  • csv.DictReader():用于读取CSV文件中的数据并返回字典形式,其中键是CSV文件中的列标题,值是相应的单元格值。
  • csv.DictWriter():用于将数据写入CSV文件中,以字典形式写入,其中字典的键是CSV文件中的列标题,值是相应的单元格值。
import csv

# 读取CSV文件
with open('example.csv', 'r') as file:
    reader = csv.reader(file)
    for row in reader:
        print(row)

# 写入CSV文件
with open('example.csv', 'w', newline='') as file:
    writer = csv.writer(file)
    writer.writerow(['Name', 'Age', 'Grade'])
    writer.writerow(['Tom', '18', 'A'])
    writer.writerow(['Kate', '19', 'B+'])

# 读取CSV文件(字典形式)
with open('example.csv', 'r') as file:
    reader = csv.DictReader(file)
    for row in reader:
        print(row)

# 写入CSV文件(字典形式)
with open('example.csv', 'w', newline='') as file:
    fieldnames = ['Name', 'Age', 'Grade']
    writer = csv.DictWriter(file, fieldnames=fieldnames)
    writer.writeheader()
    writer.writerow({'Name': 'Tom', 'Age': '18', 'Grade': 'A'})
    writer.writerow({'Name': 'Kate', 'Age': '19', 'Grade': 'B+'})

在操作CSV文件之前,务必记得导入csv模块。同时,根据需求选择使用csv.reader()和csv.writer()或者csv.DictReader()和csv.DictWriter()来读写CSV文件。