-2

これは、Pythonで実行しようとしているプログラムの一部ですが、KeyError次の行に表示されます。

def xi_group_prep(infile=os.environ ['GAMA_DATA'] + '/groups/G3Cv04/G3CFoFGroup194v04.dat'

コード:

def xi_mass_samples(infile='/export/scratch/loveday/gama/stellarMasses/StellarMassesPlus.fits',
                    ranfile='/export/scratch/loveday/gama/mask/mass_randoms_194.dat',):
    """
    Create mass sub-samples for xi(s).
    """
    Mlimits = (5, 9.5, 10, 10.5, 11, 11.5, 15)
    for i in range(len(Mlimits)-1):
        Mlo = Mlimits[i]
        Mhi = Mlimits[i+1]
        galout = 'gal_lgm' + str(Mlo) + '_' + str(Mhi) + '.dat'
        ranout = 'ran_lgm' + str(Mlo) + '_' + str(Mhi) + '.dat'
        xi_select(infile,
                  ranfile=ranfile,
                  galout=galout, ranout=ranout,
                  zrange=(0.002, 0.5), nz=50, 
                  appMin=14, appMax=19.4, lgmMin=Mlo, lgmMax=Mhi)

def xi_group_prep(infile=os.environ ['GAMA_DATA'] + '/groups/G3Cv04/G3CFoFGroup194v04.dat',
                  ranfile='/export/scratch/loveday/gama/mask/mass_randoms_194.dat',
                  galout='group.dat', ranout = 'ran_group.dat',
                  zrange=(0.002, 0.5), lgmMin=5, lgmMax=15,
                  appMin=14, appMax=19.4, absMin=-30, absMax=12):
4

1 に答える 1

1

エラーメッセージが示すようにos.environ、キーがない'GAMA_DATA'ため、KeyErrorアクセスしようとするとが表示されます。デフォルトの引数は関数定義時に評価されるため、このキーはその時点で存在している必要があることに注意してください。

于 2012-06-20T13:29:47.653 に答える