用Python写一段代码,假设CSV文件名为 data.csv,其中包含以下列:code,Line,Violation,读取Violation中的字符,把相同字符的记录提取出来并且根据他们的line值按顺序排列
时间: 2023-11-28 19:50:37 浏览: 90
用python给csv里的数据排序的具体代码
5星 · 资源好评率100%
以下是代码实现:
```python
import csv
# 打开csv文件并读取数据
with open('data.csv', 'r') as file:
reader = csv.DictReader(file)
data = [row for row in reader]
# 根据Violation中的字符进行分组
violation_groups = {}
for row in data:
violation = row['Violation']
if violation in violation_groups:
violation_groups[violation].append(row)
else:
violation_groups[violation] = [row]
# 对每个分组按照Line值进行排序
for violation, rows in violation_groups.items():
sorted_rows = sorted(rows, key=lambda r: int(r['Line']))
print(f"Violation: {violation}")
for row in sorted_rows:
print(f"\tLine: {row['Line']}, Code: {row['Code']}")
```
该代码首先使用csv模块读取data.csv文件中的数据,并根据Violation中的字符进行分组。然后对每个分组按照Line值进行排序,并输出结果。
阅读全文