我正在尝试读取/打开一些多扩展名。fits文件。但我打不开。下面是我用来打开位于同一文件夹中的.fits文件的代码的一部分:
imgs = sorted(glob.glob('location_of_the_files/*.fits'))
for location in imgs:
hdul = fits.open(imgs)
original = hdul[1].data
model = hdul[2].data
residual = hdul[3].data
当运行这个时,我得到这个:
OSError: File-like object does not have a 'write' method, required for mode 'ostream'.
我试着在网上查,但我不明白发生了什么。如何解决这个问题有什么帮助吗?
也许重要的是要提一下,当试图打开单个。fits文件时,这段代码一切都正常工作,没有任何问题:
hdul = fits.open("location_of_the_files/image_data.fits")
original = hdul[1].data
model = hdul[2].data
residual = hdul[3].data
如果需要,请告诉我,我可以上传。fits文件(在这种情况下,请告诉我如何在这里做)。
谢谢。
我想你是想做这样的事情:
for location in imgs:
with fits.open(location) as hdul:
original = hdul[1].data
model = hdul[2].data
residual = hdul[3].data
...
注意open
方法的参数是location
而不是imgs
。