txt文件所有数据在一列如何转多行多列

今天遇到的这个问题很特别,所有的数据都在一列。

开始的时候,我通过python代码实现了把这一列数据通过一行一行的读取,然后按照固定的行数为一条记录,重新保存到新的数组。最后遍历这个新的数组,把每行数据写入新的文件。

python 复制代码
#coding:utf-8
contents=[]
with open("UOM20260127P1-P60.txt","r",encoding="utf-8") as whole_file:
  for line in whole_file.readlines():
       contents.append(line)
whole_file.close()

new_contents=[]
one_line = ""
p = 0
for content in contents:
  p=p+1
  one_line = one_line +";"+ content
  one_line = one_line.replace("\n","")
  if(p==8):
    new_contents.append(one_line)
    one_line=""
    p=0

with open("new_uom.txt","w",encoding="utf-8") as wfile:
  for con in new_contents:
      wfile.writelines(con)
      wfile.writelines("\n")
wfile.close()

如下所示,原始文本与新生成的文本。

新生成的文本,每个字段之间增加了分号分隔符";"这个数据导入到excel就很方便了。

在这种方式实现一列转多行之后,我觉着excel本身应该也有办法,只不过我们不知道而已,结果这个办法还真让我找到了。下面就是详细的过程。

1、所有数据复制到excel,就是一列数据。

2、在当前工作簿制作一个新的表格,然后按照数据的排列结构,通过指定列值的方式把这个表格填满。

手动输入两列之后,可以通过鼠标拉取的方式,将整个表格全部填满。

这里可以多拉取一些行,以覆盖所有数据。

3、替换表格列值。

点击某一个单元格,选择替换。在替换对话框中将"查找内容"和"替换为"分别输入A和=A,如下所示:

然后点击全部替换,结果如下所示:

最终的数据:

剩下的工作就是把多余的行删除就可以了,另外,因为是替换,所以这里面还会把内容中包含A的内容全部替换为=A。这时候就需要在新生成的数据表格中做个简单的替换就可以了,这个应该没有难度。

相关推荐
caimouse11 小时前
Windows Research Kernel (WRK) 内存管理器完整分析
windows
济*沧*海11 小时前
BaseMapper的介绍
java·windows·tomcat
vortex512 小时前
PowerShell Provider 机制详解:从文件系统到注册表的统一抽象
windows·powershell
Metaphor69213 小时前
使用 Python 冻结 Excel 文件中的行、列和单元格
开发语言·python·excel
小狮子&14 小时前
ubuntu2604终端右键新建窗口
windows
shx_wei16 小时前
从函数调用到进程替换:使用 execl、CMake 与 PowerShell 构建一个多可执行程序
linux·c语言·windows·c
奶油话梅糖16 小时前
锐捷常用命令速查表
java·网络·windows
love530love16 小时前
CodexPro + MCP + Cloudflare 配置详解:HTTP2、QUIC 与连接排障
ide·人工智能·windows·ai agent
kyle~16 小时前
Schema---数据结构的形式化规则描述
数据结构·windows·microsoft
艾德金的溪17 小时前
【windows安装使用openclaw】
运维·windows·ai