python建立一个读csv数据文件的类ReadCsv
时间: 2024-10-14 08:12:33 浏览: 21
在Python中,你可以创建一个名为`ReadCsv`的类来处理CSV文件的读取。这个类可以封装读取、解析CSV数据的功能,并提供方法以便于后续的使用。下面是一个基本的例子:
```python
import csv
from typing import List
class ReadCsv:
def __init__(self, file_path: str):
self.file_path = file_path
def _read_csv(self) -> List[List[str]]:
with open(self.file_path, 'r') as csvfile:
reader = csv.reader(csvfile)
data = [row for row in reader]
return data
def get_data(self) -> List[List[str]]:
"""
读取并返回CSV文件的内容作为二维列表
"""
return self._read_csv()
def process_data(self, operation: callable, *args) -> List:
"""
应用指定的操作函数(如加法、减法等)到每行数据
参数operation是一个接受列表作为输入并返回单个值的函数
"""
raw_data = self.get_data()
processed_data = [operation(row, *args) for row in raw_data]
return processed_data
# 使用示例
data_handler = ReadCsv('example.csv')
raw_data = data_handler.get_data() # 返回原始数据列表
processed_data = data_handler.process_data(sum, []) # 应用求和操作到每一行
```
在这个`ReadCsv`类中,`_read_csv`方法负责读取文件内容,`get_data`方法则对外提供友好的接口获取数据,`process_data`方法则接受一个函数并应用到每一行数据上。
阅读全文