
利用类实现实验内容,要求能把输入的表格内容保存到csv或文本文件,并能读出以表格显示展示 完成编程代码
关注让 “紫雾凌寒” 来帮你回答,本回答结合 DeepSeek
如果还有问题,请评论或点击头像私信,如果有帮助到您, 请关注、采纳、点赞
csv模块来处理CSV文件,使用pandas库来更方便地处理表格数据和展示。import csv
import pandas as pd
class TableHandler:
def __init__(self):
self.data = []
def input_table(self):
rows = int(input("请输入表格的行数:"))
cols = int(input("请输入表格的列数:"))
for _ in range(rows):
row = []
for _ in range(cols):
value = input("请输入单元格的值:")
row.append(value)
self.data.append(row)
def save_to_csv(self, filename):
with open(filename, 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerows(self.data)
def save_to_text(self, filename):
with open(filename, 'w') as textfile:
for row in self.data:
textfile.write(','.join(row) + '\n')
def read_from_csv(self, filename):
with open(filename, 'r') as csvfile:
reader = csv.reader(csvfile)
self.data = list(reader)
def read_from_text(self, filename):
with open(filename, 'r') as textfile:
self.data = [line.strip().split(',') for line in textfile.readlines()]
def display_table(self):
df = pd.DataFrame(self.data)
print(df)
# 示例使用
handler = TableHandler()
handler.input_table()
choice = input("请选择保存格式(csv/text):")
if choice.lower() == 'csv':
filename = input("请输入CSV文件名:")
handler.save_to_csv(filename)
elif choice.lower() == 'text':
filename = input("请输入文本文件名:")
handler.save_to_text(filename)
read_choice = input("请选择读取格式(csv/text):")
if read_choice.lower() == 'csv':
filename = input("请输入要读取的CSV文件名:")
handler.read_from_csv(filename)
elif read_choice.lower() == 'text':
filename = input("请输入要读取的文本文件名:")
handler.read_from_text(filename)
handler.display_table()
csv模块:pandas库:csv模块进行基础操作,pandas库进行表格展示,提高了代码的实用性和可读性。 希望以上解答对您有所帮助。如果您有任何疑问,欢迎在评论区提出。