使用Python实现getTableClass()函数生成数据表类
发布时间:2023-12-26 08:39:04
下面是一个使用Python实现getTableClass()函数生成数据表类的例子:
import csv
def getTableClass(file_name):
class Data_Table:
def __init__(self, data):
self.data = data
def row_count(self):
return len(self.data)
def column_count(self):
return len(self.data[0])
def get_value(self, row, column):
return self.data[row][column]
def set_value(self, row, column, value):
self.data[row][column] = value
with open(file_name, 'r') as file:
csv_reader = csv.reader(file)
data_table = list(csv_reader)
return Data_Table(data_table)
# 使用例子
# 构造数据表 CSV 文件
with open('data.csv', 'w') as file:
writer = csv.writer(file)
writer.writerow(['Name', 'Age', 'Gender'])
writer.writerow(['John', '25', 'Male'])
writer.writerow(['Emily', '30', 'Female'])
writer.writerow(['Michael', '35', 'Male'])
# 生成数据表类对象
table = getTableClass('data.csv')
# 获取行数和列数
print(f"Row count: {table.row_count()}")
print(f"Column count: {table.column_count()}")
# 获取指定单元格的值
print(f"Value at (1, 0): {table.get_value(1, 0)}") # Output: Emily
# 修改指定单元格的值
table.set_value(2, 1, '36')
print(f"Value at (2, 1) after modification: {table.get_value(2, 1)}") # Output: 36
上述代码中的getTableClass()函数实现了从一个CSV文件中读取数据,构造一个数据表类对象,并返回该对象。
