0

命名規則のあるファイルがあります

st009_out.abc1.dat
st009_out.abc2.dat
st009_out.abc3.dat 
..................
..................

ファイルのデータを使用して数学関数を実行し、ファイルから 2 番目の列を抽出する必要がある Python コードを書いています。私はこのように試しました:

for k in range(1,10):
    file1=open('st009_out.abc'+str(k)+'.dat','r')
    ...........
    os.system("awk '{print $2}' st009_out.abc${k}.pmf > raj.dat")

kしかし、シェルコマンドでの値を取得していないため、これは機能していません。

どうすれば進歩しますか?

4

2 に答える 2

2

試す

os.system("awk '{print $2}' st009_out.abc"+str(k)+".pmf > raj.dat")
于 2012-06-05T18:17:50.473 に答える
1

ファイル名を 2 回使用するため、1 回だけ設定します

for k in range(1,10):
    name = 'st009_out.abc'+str(k)+'.dat'
    file1=open(name,'r')
    ...........
    os.system("awk '{print $2}' " + name  + " > raj.dat")

またはPythonでawkを書き直してください

于 2012-06-05T19:40:11.183 に答える