Iは、CSVファイル内の複数の行を有し、各 `ラインは私が値を交換する必要があり、この抽出値
0.10089;0;0;1;0;0;0;0;0;0;-0.9;-0.35;999999;0;0;0;80;81.226;158.25;0;
ように見える-0.9
、-0.35
そして999999
2*
ことにより、これらの値は、-0.9
が-1.8
なり...
は、私はすべてのline
sc_pos_array
を宣言しています
sc_pos_array = [i for i,x in enumerate(line) if x == ';']
私は値0.9
が10th
セミコロンの後に起こることを知っている、と私はsc_pos_array[9]
から10th
セミコロンのインデックスを知っています。 0.9
にアクセスするには、私はその後
を書くが、これは動作するようには思えません。次のコードは、値-0.9を置き換え、バック文字列にその2倍の値をsubstitues
line[sc_pos_array[9]+1 : sc_pos_array[10]]
:私は、値0.9にアクセスするには、次のfor
ループ
with fileinput.input(inplace=True) as f: for line in f: ...
"機能していない"とはどういう意味かはっきりしませんが、あなたのアプローチを変更することを強くお勧めします。 'csv'モジュールのような既存のツールを使う方がはるかに簡単です。 –