我对 python 很陌生,并且已经解决了我在搜索和阅读这个网站时遇到的许多问题。但现在是我问的时候了……
我有一个具有以下结构的 txt 文件:
SETUP
STN_NO 419430403
STN_ID "S1"
INST_HT 1.545000;
END SETUP
SLOPE (TgtNo, TgtID, CfgNo, Hz, Vz, SDist, RefHt, Date, Ppm, ApplType, Flags)
419430405, "S2", 1, 0.000000, 98.799682, 12.056200, 1.700000, 18-10-2012/10:06:08.0, 0.000000, 107, 00000000;
419430407, "1", 1, 0.000052, 98.799806, 12.056800, 1.700000, 18-10-2012/10:06:16.0, 0.000000, 107, 00000000;
419430409, "2", 2, 78.734236, 99.822405, 17.919000, 0.000000, 18-10-2012/10:09:50.0, 0.000000, 107, 00000000;
419430410, "3", 2, 78.861726, 108.352791, 17.213700, 0.000000, 18-10-2012/10:10:10.0, 0.000000, 107, 00000000;
END SLOPE
SETUP
STN_NO 419430459
STN_ID "1"
INST_HT 1.335000;
END SETUP
SLOPE (TgtNo, TgtID, CfgNo, Hz, Vz, SDist, RefHt, Date, Ppm, ApplType, Flags)
419430462, "S1", 5, 122.545107, 99.563594, 12.056300, 1.700000, 18-10-2012/11:04:36.0, 0.000000, 107, 00000000;
419430464, "50", 5, 200.000125, 99.563463, 12.058800, 1.700000, 18-10-2012/11:04:44.0, 0.000000, 107, 00000000;
419430466, "51", 6, 60.723043, 95.842462, 8.607300, 0.000000, 18-10-2012/11:06:36.0, 0.000000, 107, 00000000;
419430467, "52", 6, 99.683958, 95.664912, 7.581100, 0.000000, 18-10-2012/11:08:15.0, 0.000000, 107, 00000000;
419430468, "53", 6, 101.389131, 87.173327, 7.853000, 0.000000, 18-10-2012/11:08:51.0, 0.000000, 107, 00000000;
END SLOPE
END THEODOLITE
问题是我想在每行的末尾添加正确的 INST_HT 值(意味着 SLOPE 和 END SLOPE 之间的第一个数据块中的 1.545000 和第二个中的 1.335000 等)。
目标是创建一个适当的 csv 文件,其中包含 TgtID、Hz、Vz、SDist、RefHt 列(已经完成)和 INST_HT(错过了那个!!!)的数字数据。
到目前为止,我所做的唯一想法是创建一个列表,其中包含从文件开头到结尾的所有 INST_HT 值。
有任何想法吗?