一部のコードを fortran90 から python 2.7 に変換していますが、fortran コードの Open、Write、および Read 関数の引数を理解するのに苦労しています。パイソン。
ここに、私が理解して Python に変換したい Fortran コードのブロックをいくつか示します。
OPEN(1,FILE=TRIM(filenameOut),RECL=2000)
WRITE(1,*) "tAge/yr (u-r) (u-z) fGas Mstars/MstarsOld"
CLOSE(1)
「1」はファイル名にラベルを割り当てているだけだと思います.TRIMは、pythonに相当する変数の前後の空白を削除しています filenameOut.strip() または何か。RECL が何をしているのか、このブロックで他の関数に相当する python がどうなるかはわかりません。
もう一つの例:
OPEN(1,FILE=TRIM(filenameOut),RECL=2000)
WRITE(1,*) "(u-r) prob(u-r)"
DO countInside=1,nColourBins
WRITE(1,*) uMinusrMidpointsArray(countInside),probuMinusrArray(countInside)
CLOSE(1)
このことから、アスタリスクはファイルの次の行に書き込むことを意味していると推測できます。繰り返しますが、Pythonでこれを行う方法はまだわかりません。
fortran コードの読み取り例:
OPEN(1,FILE=TRIM(filenameBC),RECL=2000)
READ(1,*)
READ(1,*)
READ(1,*)
READ(1,*)
READ(1,*)
READ(1,*)
READ(1,*)
IOEnd=0
DO WHILE(IOEnd>-1)
READ(1,*,IOSTAT=IOEnd) logTime,Mbol,g,uMg,gMr,gMi,gMz
END DO
CLOSE(1)
READ(1,*) の繰り返しが単にファイルの最初の 7 行を読み取っていることは理解していますが、これに相当する Python のショートカット、つまり 8 行目などから開始する方法がわかりません。