从python中的fit文件中读取头文件

时间:2015-07-14 17:52:08

标签: python

我正在尝试从目录中的特定拟合文件中读取标头。我不想从每个文件中获取标头,只是我指定的标头。这是我到目前为止的代码:

import os
from astropy.io import fits as pyfits

def mycode(files):

    fits = []
    headers = []
    for i in files:
        fits.append(i)

        for j in fits:
            if 'rf' in j:
                hdulist = pyfits.open(j)
                header = hdulist[0].header['headername']
                headers.append(header)

    return headers

pathway = 'the directory'
dirs = os.listdir(pathway)

print mycode(dirs)

然而,当我运行它时,它会显示“没有这样的文件或目录”并给出我试图访问的文件之一的名称。我将不胜感激任何帮助!

1 个答案:

答案 0 :(得分:0)

使用 pyfits.open(j)时,python知道该文件位于当前目录(此脚本所在的目录)中。因此,既然你从另一个目录中获取了文件的名称,python就找不到它们了。一种解决方案是将目录附加到每个文件的开头。