【发布时间】:2021-12-07 10:49:56
【问题描述】:
我有一个按以下方式排列的文本文件:
Time x1 y1 z1 x2 y2 z2 ... x54 y54 z54
0 x1(0) ect. x2(0) . . . .
1 x1(1) . . . . . . .
. . . . . . . . . .
1e10
相反,我希望它看起来像这样:
Time x y z
0 x1(0) y1(0) z1(0)
0 x2(0) y2(0) z2(0)
.
.
0 x54(0) y54(0) z54(0)
1 x1(1) y1(1) z1(1)
.
.
.
1e10 x1(1e10) y1(1e10) z1(1e10)
.
.
1e10 x54(1e10) y54(1e10) z54(1e10)
我最初想这样做:
with open("file.txt", 'r') as f:
lines = f.readlines()
time = [float(line.split()[0]) for line in lines]
x1 = [float(line.split()[1]) for line in lines]
x2 = [float(line.split()[2]) for line in lines]
等。直到我有 1 + 3 x 54 个列表。然后我必须合并列表(分别用于 x、y 和 z 列表),即 [x1(0)、x2(0)、...、x54(0)、x1(1) 等]。这似乎非常低效,而且由于我的文件太大,我想我会在这里遇到问题。有没有人对如何做到这一点有更好的想法?
谢谢
【问题讨论】:
-
您可能希望使用库
pandas来处理表格格式的数据
标签: python list file for-loop formatting