使用Python的cfg()函数进行CSV文件的读写操作方法和实例
Python的csv模块提供了csv.reader()和csv.writer()函数,分别用于读取和写入CSV文件。
首先,我们需要导入csv模块:
import csv
## 读取CSV文件
使用csv.reader()函数可以读取CSV文件。该函数将读取的每一行数据作为列表的元素,并返回一个迭代器,我们可以使用for循环逐行读取数据。
with open('data.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
print(row)
在上面的代码中,我们打开名为data.csv的文件,并创建了一个csv.reader对象。然后,我们使用for循环迭代读取文件的每一行数据,并将每一行数据打印出来。
## 写入CSV文件
使用csv.writer()函数可以写入CSV文件。我们可以先创建一个csv.writer对象,然后逐行将数据写入文件。
with open('output.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerow(['Name', 'Age', 'City'])
writer.writerow(['John', '25', 'New York'])
writer.writerow(['Jane', '30', 'Chicago'])
在上面的代码中,我们创建了一个名为output.csv的文件,并创建一个csv.writer对象。然后,我们使用writerow()函数逐行写入数据。在 行,我们写入了列名;在后续行中,我们写入了相应的数据。
## 使用DictReader和DictWriter
除了使用csv.reader和csv.writer函数,我们还可以使用csv.DictReader和csv.DictWriter函数,这两个函数分别以字典的形式读取和写入CSV文件。
with open('data.csv', 'r') as file:
reader = csv.DictReader(file)
for row in reader:
print(row['Name'], row['Age'], row['City'])
上面的代码中,我们使用csv.DictReader函数创建了一个字典类型的迭代器。通过字典的键来访问数据,可以通过列名读取对应的值。
with open('output.csv', 'w', newline='') as file:
fieldnames = ['Name', 'Age', 'City']
writer = csv.DictWriter(file, fieldnames=fieldnames)
writer.writeheader()
writer.writerow({'Name': 'John', 'Age': '25', 'City': 'New York'})
writer.writerow({'Name': 'Jane', 'Age': '30', 'City': 'Chicago'})
上面的代码中,我们使用csv.DictWriter函数创建了一个字典类型的写入器。我们可以使用writeheader()函数写入列名,然后使用writerow()写入每一行的数据,使用字典的键值对来指定每一列的值。
## 完整示例
下面是一个完整的示例,展示了如何使用csv模块读取和写入CSV文件:
import csv
# 读取CSV文件
with open('data.csv', 'r') as file:
reader = csv.reader(file)
for row in reader:
print(row)
# 写入CSV文件
with open('output.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerow(['Name', 'Age', 'City'])
writer.writerow(['John', '25', 'New York'])
writer.writerow(['Jane', '30', 'Chicago'])
# 使用DictReader读取CSV文件
with open('data.csv', 'r') as file:
reader = csv.DictReader(file)
for row in reader:
print(row['Name'], row['Age'], row['City'])
# 使用DictWriter写入CSV文件
with open('output.csv', 'w', newline='') as file:
fieldnames = ['Name', 'Age', 'City']
writer = csv.DictWriter(file, fieldnames=fieldnames)
writer.writeheader()
writer.writerow({'Name': 'John', 'Age': '25', 'City': 'New York'})
writer.writerow({'Name': 'Jane', 'Age': '30', 'City': 'Chicago'})
以上是使用Python的csv模块进行CSV文件读写操作的方法和实例。通过使用csv.reader()和csv.writer()函数可以方便地读取和写入CSV文件。另外,使用csv.DictReader()和csv.DictWriter()函数可以以字典的形式读取和写入CSV文件。
