Я хочу
- прочитать в файле соответствия
- изменить некоторые заголовки
- сохранить его с изменениями в новом файле соответствия.
До сих пор, я думаю, я достиг этого, однако новый файл соответствий имеет "None", когда я выполняю hdu.info ().Я запутался, что это значит, почему он есть, и это плохо?
Я вставлю нижеприведенный код с соответствующими выходными данными:
from astropy.io import fits
hdulist = fits.open('2D_comb_ff_wavcal_red_sci_2.fits')
hdu = hdulist[0]
hdulist.info()
Filename: 2D_comb_ff_wavcal_red_sci_2.fits
No. Name Ver Type Cards Dimensions Format
0 PRIMARY 1 PrimaryHDU 287 (1024, 1024) float32
print 'CRVAL1 then = ', hdu.header['CRVAL1']
print 'CRVAL2 then = ', hdu.header['CRVAL2']
CRVAL1 then = 14975.1660156
CRVAL2 then = 1.0
CRVAL1_orig = hdu.header['CRVAL1']
CRVAL2_orig = hdu.header['CRVAL2']
hdu.header['CRVAL1'] = CRVAL2_orig
hdu.header['CRVAL2'] = CRVAL1_orig
print 'CRVAL1 now = ', hdu.header['CRVAL1']
print 'CRVAL2 now = ', hdu.header['CRVAL2']
CRVAL1 now = 1.0
CRVAL2 now = 14975.1660156
hdu.writeto('newheader.fits', overwrite=True)
new = fits.open('newheader.fits')
print new.info()
Filename: newheader.fits
No. Name Ver Type Cards Dimensions Format
0 PRIMARY 1 PrimaryHDU 287 (1024, 1024) float32
None
Заголовки обновлены (я проверял), но почему здесь написано "Нет"?Является ли hdu.writeto () неправильным?Я пытался читать о flush (), но это меня смутило.
Спасибо