我有包含随机 x、y、z 坐标的文件。我正在尝试编写一些代码以在 z 值前面插入一个“-”(负数)(因此给我一个负高程)。
问题是,我将文件保存为 .csv,不幸的是,这不会添加任何分隔符,因此数据仅位于每行一个单元格上,由空格分隔:x_y_z。“csv”文件包含超过 100 万个点,因此在 excel 中对其进行编辑是不可能的。
我已经尝试了几种方法来做我想做的事,但是当我试图遍历每一行并写出数据时我摔倒了。任何帮助或指示将不胜感激。
我已经尝试了 2 件事。第一种方法可能非常粗糙,但它似乎达到了我想要的效果,虽然它只适用于 1 行。我不知道如何真正遍历每一行。
第二种方法将取第一行,并将X,Y和Z分成不同的变量,之后我迷路了!
#First method:
import csv
inputfile = csv.reader(open ("\\wk.csv", 'r'))
for row in inputfile:
rowstring = str(row)
x1 = rowstring[2:11]
y1 = rowstring[12:22]
z1 = "-" + rowstring[23:29]
xynz = x1 + " " + y1 + " " + z1
#second method:
with open ("\\wk.csv", 'r+') as f:
for l in f:
x2, y2, z2 = l.split()
z3 = "-"+z2
第一种方法会给我只需要一行的结果。['555555.55', '4444444.44', '-333.33']
第二种方法将 Z 分开,我可以在其中添加负数,但在我被卡住之后