0

プログラムの詳細:

私は次の行のテキストファイルを調べる必要があるPython用のプログラムを書いています:

12のモード1が見つかりました:EV = 1.5185449E + 04、f = 19.612545、T=0.050988。

問題:

次に、プログラムがその行を検出すると、その行を配列に格納し、f=19.612545から値19.612545を取得します。

質問:

これまでのところ、行を見つけた後、その行を配列に格納することができました。しかし、文字列を保存して文字列を検索し、変数fから情報を抽出した後、何を使用するかについて問題があります。誰かがこれを達成する方法について何か提案やヒントがありますか?

4

2 に答える 2

5

やりたい方法に応じて、CosmicComputerは正規表現を参照する権利があります。構文がこれほど単純な場合は、いつでも次のようにすることができます。

line = 'Found mode 1 of 12: EV= 1.5185449E+04, f= 19.612545, T= 0.050988.'

splitByComma=line.split(',')

fValue = splitByComma[1].replace('f= ', '').strip()
print(fValue)

結果は19.612545印刷されます(ただし、文字列のままです)。

行をコンマで分割し、2番目のチャンクを取得して、f値を分割します。エラーチェックと変換はあなたに任されています!

于 2012-07-27T18:47:30.007 に答える
0

ここで正規表現を使用するのは狂気です。string.findを次のように使用するだけです:(ここで、stringは、文字列を保持する変数の名前です)

index = string.find('f=')
index = index + 2 //skip over = and space 
string = string[index:] //cuts things that you don't need 
string = string.split(',') //splits the remaining string delimited by comma
your_value = string[0] //extracts the first field

私はその醜いことを知っていますが、REと比較して何もありません。

于 2012-07-27T18:52:13.437 に答える