1
入力ファイルで "ND"で始まる行を探しています。 次のようになりますよう:入力ファイルの正確な文字列を見つける
ND 195 4.53434033e+006 5.62453069e+006 2.56369141e+002
ND 196 4.53436645e+006 5.62443565e+006 2.56452118e+002
NS 129 113 97 82 58 59 37 22 17 18
NS 5 6 12 26 42 64 62 85 102 117
私はこのようなコードを書いた:
from __future__ import print_function
found_ND = False
text = "ND"
with open('input.txt', 'r') as f, open('output.dat', 'w') as outfile:
for line in f:
if text in line:
found_ND = True
if found_ND:
#do whatever you want
try:
line = line.strip()
columns = line.split()
i = float(columns[1])
x = float(columns[2])
y = float(columns[3])
z = float(columns[4])
print(z)
print("{:.2f}".format(z), file=outfile)
except ValueError:
pass
をしかし、結果に、私はまた、「NS」で始まる文字列の4番目の列を取得します。 結果は次のようになります。
256.37
256.45
82.00
26.00
にはどうすれば"NS"
で始まる行を避けるためにコードを書くことができますか?
if line.startswith( 'ND')try .... ' –