目标功能是读取一个txt文档(算上回车(一个字)和标点(一个字),总共45个“字”),
然后将里面的汉字文本逐字逐标点地写入excel表格(5*9大小),在excel中从右往左,从上至下(像古代书籍那样)排列,
换行回车用特殊符号表示(譬如:"\n"或"/br")。
然后还可以从excel中读取该数据,并重新排列成现代文本(换行符号变回换行格式),输出txt。
可选编程语言:Visual Basic,C语言,Python。
1条回答 默认 最新
- CSDN专家-天际的海浪 2021-08-02 13:37关注
你题目的解答代码如下:(如有帮助,望采纳!谢谢! 点击我这个回答右上方的【采纳】按钮)
import openpyxl with open(r'data.txt', 'r', encoding='utf-8') as fileObj: text = fileObj.read() print(text) wb = openpyxl.Workbook() ws=wb.active for y in range(5): li = [] for x in range(9): v = text[(8-x)*5+y] if v=='\n': v = '<br>' li.append(v) print(li) ws.append(li) wb.save("data.xlsx") # 从excel中读取该数据,并重新排列成现代文本 wb = openpyxl.load_workbook("data.xlsx") ws = wb.active tl = [""]*45 for y,r in enumerate(ws.rows): for x,d in enumerate(r): v = d.value if v=='<br>': v = '\n' tl[(8-x)*5+y] = v print(''.join(tl)) with open(r'data2.txt', 'w', encoding='utf-8') as fileObj: fileObj.write(''.join(tl))
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报