python实现比较两个csv文件中的指定的两列数据,将这两列数据中相等的值打印出来
时间: 2023-05-24 16:07:09 浏览: 93
假设两个csv文件的格式如下:
file1.csv
| Name | Age |
|------|-----|
| Tom | 20 |
| John | 22 |
| Lucy | 21 |
file2.csv
| Name | Score |
|------|-------|
| Tom | 90 |
| John | 80 |
| Lily | 85 |
那么比较两个csv文件中的指定的两列数据,将这两列数据中相等的值打印出来的代码可以如下:
```python
import csv
# 读取第一个文件
with open('file1.csv', 'r') as file1:
reader1 = csv.reader(file1)
next(reader1) # 跳过表头
data1 = {row[0]: row[1] for row in reader1} # 将姓名和年龄存储为字典
# 读取第二个文件
with open('file2.csv', 'r') as file2:
reader2 = csv.reader(file2)
next(reader2) # 跳过表头
for row in reader2:
if row[0] in data1 and row[1] == data1[row[0]]: # 判断是否有相同的姓名和年龄
print(row[0], row[1], row[2]) # 打印姓名、年龄和分数
```
运行这段代码就可以打印出file1.csv和file2.csv中姓名和年龄都相等的学生信息和成绩,输出结果如下:
```
Tom 20 90
John 22 80
```
阅读全文