ヘッダ.¶
Header
¶
- class astropy.io.fits.Header(cards=[], copy=False)[ソース]¶
ベースクラス:
object
見出し類に適している。このクラスは、タイトルに適合するように類似辞書のインターフェースおよび類似リストのインターフェースを開示する。
ヘッダはキーワードでインデックスすることができ,辞書と同様に関連値を返す.先頭にキーワードが重複するカードが含まれている場合には,1番目のキーワードが与えられたキーワードであるカードの値のみを返す.(keyword,n)形式のインデックスとして2タプルを用いることもできるが,重複キーワードが存在する場合には,そのキーワードのn番目の値を返す.
例えば:
>>> header['NAXIS'] 0 >>> header[('FOO', 1)] # Return the value of the second FOO keyword 'foo'
タイトルはカード番号のインデックスを押すこともできます:
>>> header[0] # Return the value of the first card in the header 'T'
HISTORYやCOMMENTのような注釈キーワードは、Headerオブジェクトのために‘HISTORY’または‘COMMENT’を使用してインデックスを作成する場合、すべての履歴/注釈値のリストを返す:
>>> header['HISTORY'] This is the first history entry in this header. This is the second history entry in this header. ...
使用タイトルの詳細については、Astropy文書を参照されたい。
注意事項
Fitsキーワードは完全に大文字でなければなりませんが
Header
対象は大文字と小文字を区別しない.1つを構築することは
Header
反復可能および/またはテキストファイルからのものである。- パラメータ
- add_blank(value='', before=None, after=None)[ソース]¶
空白のカードを追加します。
- パラメータ
- value文字列、オプション
追加するテキスト。
- before文字列またはint、オプション
中のと同じだ
Header.update
- after文字列またはint、オプション
中のと同じだ
Header.update
- add_comment(value, before=None, after=None)[ソース]¶
1つ追加する
COMMENT
カードです。- パラメータ
- value応力.応力
追加するテキスト。
- before文字列またはint、オプション
中のと同じだ
Header.update
- after文字列またはint、オプション
中のと同じだ
Header.update
- add_history(value, before=None, after=None)[ソース]¶
1つ追加する
HISTORY
カードです。- パラメータ
- value応力.応力
追加される履歴テキスト。
- before文字列またはint、オプション
中のと同じだ
Header.update
- after文字列またはint、オプション
中のと同じだ
Header.update
- append(card=None, useblanks=True, bottom=False, end=False)[ソース]¶
見出しの末尾に新しいキーワード+バリューカードを追加します
list.append
それがそうです。デフォルトの場合、先頭の最後のカードに注釈キーワードがあれば、注釈の前に新しいキーワードが付加される(新しいキーワードも注釈でない限り)。
他のものとは違います
list.append
パラメータなしで呼び出されることができるので、この場合、タイトルの末尾に空白カードを追加する。この場合,すべてのキーワードパラメータは無視される.- パラメータ
- card文字列、メタグループ
キーワードや(キーワード、値、 [評論する.] )は、単一のヘッダカードを表すタプルであり、注釈は任意であり、この場合、二値グループを使用することができる。
- useblanksブル値、オプション
ヘッダの末尾に空白カードがあれば、ヘッダ中のカード総数が増加しないように1枚目の空白カードを交換してください。そうでなければ、空白カードの数を保留してください。
- bottomブル値、オプション
Trueであれば,最後の非インタプリタの後に追加するのではなく,最後の非空カードの後に追加する.
- endブル値、オプション
Trueであれば,useplakksとBottomオプションを無視し,ヘッダの末尾に追加する.
- property cards¶
このヘッダを構成する下位物理カード;見ることができるが、直接修正すべきではない。
- property comments¶
各キーワードに関連する注釈(ある場合)を見る.
例えば、NAXISキーワードに関する注釈を見る:
>>> header.comments['NAXIS'] number of data axes
コメントはこのインタフェースで更新することもできます:
>>> header.comments['NAXIS'] = 'Number of data axes'
- copy(strip=False)[ソース]¶
1部コピーする
Header
それがそうです。バージョン 1.3 で変更:
copy.copy
そしてcopy.deepcopy
1つはHeader
このメソッドを呼び出す.
- count(keyword)[ソース]¶
タイトルに与えられたキーワードのカウントに戻ります
list.count
Headerオブジェクトをキーワードリストとすると.- パラメータ
- keyword応力.応力
ヘッダ中のインスタンスをカウントするキーワード
- extend(cards, strip=True, unique=False, update=False, update_first=False, useblanks=True, bottom=False, end=False)[ソース]¶
見出しの末尾に複数のキーワード+バリューカードを付加したものと同様に
list.extend
それがそうです。- パラメータ
- cards反復可能である.
(キーワード、値、 [評論する.] )元組
Header.append
それがそうです。- stripブル値、オプション
拡張タイトルまたはカードリストのみからより一般的なキーワードを追加するために、特定のタイプのHDUにのみ意味のある任意のキーワードを削除する(デフォルト:
True
)。- uniqueブル値、オプション
もし
True
重複するキーワードが追加されないことを保証し、このヘッダに既存のキーワードは簡単に破棄されるであろう。注釈キーワード(コメント,履歴など)は例外であり,それらの値が一致した場合にのみ重複キーワードとみなされる.- updateブル値、オプション
もし
True
したがって、現在のヘッダは、入力ヘッダ中のキーワードの値および注釈を繰り返し使用して更新される。これは取って代わるだろうunique
論争する。コメントキーワードの処理方法とunique=True
それがそうです。- update_firstブル値、オプション
タイトルの第1のキーワードが‘Simple’であり、入力タイトルの第1のキーワードが‘XTRANCE’である場合、‘Simple’キーワードは“XTRANCE”キーワードに置き換えられる。同様に、タイトルの第1のキーワードが‘XTRANCE’であり、入力タイトルの第1のキーワードが‘Simple’である場合、‘Xtension’キーワードは‘Simple’キーワードに置き換えられる。そうでなければ、このような行為は、結果ヘッダが有効な主ヘッダであるか拡張ヘッダであるかにかかわらず愚かである。これは主に後方互換性を支援するためです
Header.fromTxtFile
方法は,以下の場合にのみ適用される.update=True
それがそうです。- 空白、底、終わりを使ってブル値、オプション
これらのパラメータは
Header.append()
また,新しいカードを見出しに付加する.
- classmethod fromfile(fileobj, sep='', endcard=True, padding=True)[ソース]¶
似たような
Header.fromstring()
ただし、与えられた類似ファイルのオブジェクトまたはファイル名からヘッダ文字列を読み出す。- パラメータ
- fileobj文字列、類似文書
FITSヘッダのファイル名や開いた類似ファイルのオブジェクトをその中から読み込む.開いたファイルハンドルに対して,ファイルポインタはタイトルの先頭に位置しなければならない.
- sep文字列、オプション
カードの間の区切り線は、改行のようなものです。デフォルトの場合,カードセパレータはない(オリジナルFITSファイルの場合のように).
- endcardブル値、オプション
True(デフォルト値)である場合、ヘッダは、有効とみなされるために、末尾のカードで終了しなければならない。ターミネーターが見つからなければ
OSError
みんな育てられました。- paddingブル値、オプション
True(デフォルト値)であれば、FITSヘッダ·ブロック·サイズ2880の倍数にヘッダを埋め込む必要がある。そうでなければ、どんな充填やその欠如も無視する。
- 返品
- classmethod fromkeys(iterable, value=None)[ソース]¶
似たような
dict.fromkeys()
--新しいものを作成Header
反復可能なキーワードおよびオプションのデフォルト値から。この方法は、実世界のFITヘッドを作成するためには特に有用ではないかもしれないが、テストには有用である。
- classmethod fromstring(data, sep='')[ソース]¶
ヘッダデータ全体を含むバイト文字列からHDUヘッダを作成する。
- パラメータ
- data文字列またはバイト
ヘッダ全体を含む文字列またはバイト。バイトについては,ラテン語-1を用いて復号する(FITSヘッダでは純粋なASCII文字のみを許可するが,ラテン語-1はフォーマットが誤ったFITSファイルに出現する可能性のある任意の無効バイトを保持することを可能にする).
- sep文字列、オプション
カードの間の区切り線は、改行のようなものです。デフォルトの場合,カードセパレータはない(オリジナルFITSファイルの場合のように).一般に、これは、ヘッダがテキスト(例えば、各カードの後に改行がある)として印刷され、新しいものを作成したい場合にのみ使用されます。
Header
その中からコピー/ペーストによりコピー/ペーストする.
- 返品
実例.
>>> from astropy.io.fits import Header >>> hdr = Header({'SIMPLE': True}) >>> Header.fromstring(hdr.tostring()) == hdr True
もし作成するには
Header
印刷テキストでは,FITSファイルに表示されているのとまったく同じバイナリ構造を持つ必要はなく,カード長全体が80バイトである.逆に、各“カード”は、FITSタイトルのように“見える”限り、カード長全体に充填する必要はない。>>> hdr = Header.fromstring("""\ ... SIMPLE = T / conforms to FITS standard ... BITPIX = 8 / array data type ... NAXIS = 0 / number of array dimensions ... EXTEND = T ... """, sep='\n') >>> hdr['SIMPLE'] True >>> hdr['BITPIX'] 8 >>> len(hdr) 4
- classmethod fromtextfile(fileobj, endcard=False)[ソース]¶
簡単なテキストファイルまたは類似ファイルのオブジェクトからタイトルを読み取る。
これは以下のようなものです
>>> Header.fromfile(fileobj, sep='\n', endcard=False, ... padding=False)
参考
- get(key, default=None)[ソース]¶
似たような
dict.get()
--Header内のキーワードに関連付けられた値を返し、キーワードが見つからない場合はデフォルト値を返します。- パラメータ
- key応力.応力
タイトルにも見出しにもキーワードがない可能性がある。
- default任意選択.
ヘッダにキーワードが見つからない場合に戻るデフォルト値。
- 返品
- 値:文字列、数字、複数、ブールまたは
astropy.io.fits.card.Undefined
与えられたキーワードに関連する値は、キーワードがタイトルにない場合、デフォルト値である。
- 値:文字列、数字、複数、ブールまたは
- index(keyword, start=None, stop=None)[ソース]¶
タイトルにキーワードの最初の例が与えられている場合
list.index
Headerオブジェクトをキーワードリストとすると.- パラメータ
- keyword応力.応力
見出しのすべてのキーワードリストで検索するキーワード
- start形が整っていて、オプションです
指数の下限
- stop形が整っていて、オプションです
指数の上限
- insert(key, card, useblanks=True, after=False)[ソース]¶
タイトルの所与の位置に新しいキーワード+値カードを挿入するのと同様に
list.insert
それがそうです。- パラメータ
- key整数、文字列、またはタプル
その前に新しいキーワードのタイトルキーワードリストのインデックスを挿入すべきか、またはその前に新しいキーワードのキーワードの名前を挿入すべきである。重複するキーワードの周囲に挿入するために、(キーワード、インデックス)タプルを受け入れることもできる。
- card文字列、メタグループ
キーワードや(キーワード、値、 [評論する.] )元組
Header.append
- useblanksブル値、オプション
ヘッダの末尾に空白カードがあれば、ヘッダ中のカード総数が増加しないように1枚目の空白カードを交換してください。そうでなければ、空白カードの数を保留してください。
- afterブル値、オプション
もし設定が
True
挿入、挿入 その後 指定されたインデックスやキーワードは、その前ではありません。黙認する.False
それがそうです。
- items()[ソース]¶
像
dict.items()
それがそうです。
- keys()[ソース]¶
像
dict.keys()
--直接いますHeader
事例は同じ行為を持つ.
- pop(*args)[ソース]¶
その動作原理は以下のとおりである
list.pop()
パラメータまたはインデックスパラメータが提供されていない場合、動作方式は同様であるdict.pop()
それがそうです。
- popitem()[ソース]¶
似たような
dict.popitem()
それがそうです。
- remove(keyword, ignore_missing=False, remove_all=False)[ソース]¶
タイトルから与えられたキーワードを除去する最初の例は、同様である
list.remove
Headerオブジェクトをキーワードリストとすると.- パラメータ
- keyword応力.応力
ヘッダ中の最初のインスタンスのキーワードが除去される必要がある。
- ignore_missingブル値、オプション
Trueであれば,欠落したキーワードは無視する.そうでなければ,ヘッダにそのキーワードが存在しなければKeyErrorを引き起こす.
- remove_allブル値、オプション
Trueの場合は,Keywordのすべての事例を削除する.そうでなければ、与えられたキーワードの最初のインスタンスのみを削除する。
- rename_keyword(oldkeyword, newkeyword, force=False)[ソース]¶
表の頭にカードのキーワードをリネーミングする。
- パラメータ
- oldkeyword文字列または全体型
古いキーワードまたはカードインデックス
- newkeyword応力.応力
キーワードを新設する
- forceブル値、オプション
いつ?
True
タイトルに新しいキーワードが存在する場合には、重複するキーワードを強制的に作成する。そうでなければValueError
みんな育てられました。
- set(keyword, value=None, comment=None, before=None, after=None)[ソース]¶
キーワードを指定する値および/または注釈および/または位置を設定します。
タイトルにそのキーワードが存在しない場合は、指定された位置に新しいキーワードを作成し、位置が指定されていない場合は、新しいキーワードをタイトル末尾に追加する。
この方法は
Header.update()
Astropy v 0.1まで。注釈
なお、
header.set(keyword, value)
そしてheader.set(keyword, value, comment)
これはheader[keyword] = value
そしてheader[keyword] = (value, comment)
それぞれです。以下のコマンドを使用して、既存のキーワードに対して新しいキーワードを挿入することもできる:
>>> header.insert('NAXIS1', ('NAXIS', 2, 'Number of axes'))
既存のキーワードの前に挿入するか、または:
>>> header.insert('NAXIS', ('NAXIS1', 4096), after=True)
既存のキーワードの後に挿入するには、以下の操作を実行してください。
唯一の利点は
Header.set()
古い使い方を簡単に置き換えることができるということですHeader.update()
概念的にも関数署名においても.- パラメータ
- keyword応力.応力
見出しキーワード
- value文字列、オプション
所与のキーワードのために設定される値であり、ない場合は、既存の値は保持されるが、“”は、ヌル値を設定するために使用されてもよい。
- comment文字列、オプション
所与のキーワードのために設定される注釈;注釈がない場合、既存の注釈は保持されるが、
''
空白の注釈を設定するために使用可能- before文字列、int、オプション
キーワードの名前、または
Card
タイトルでは、カードはその位置の前に位置しなければならない。この論点はbefore
より優先するafter
両方とも指定すれば。- after文字列、int、オプション
キーワードの名前、または
Card
その後、カードはタイトルに位置しなければならない。
- setdefault(key, default=None)[ソース]¶
似たような
dict.setdefault()
それがそうです。
- strip()[ソース]¶
特定のタイプのヘッダに特定されたカードを剥離する.
Strip cards like
SIMPLE
,BITPIX
, etc. so the rest of the header can be used to reconstruct another kind of header.
- tofile(fileobj, sep='', endcard=True, padding=True, overwrite=False)[ソース]¶
ファイルまたは同様のファイルのオブジェクトにヘッダを書き込む。
デフォルトの場合、これは、エンドカードを含むFITSファイルに完全に書き込まれるようにヘッダに書き込まれ、次の2880バイトの倍数に充填される。しかし、この中のいくつかの側面は制御可能かもしれない。
- パラメータ
- fileobj類似パスまたは類似ファイル、オプション
ファイルのパス名、または開いたファイルハンドルまたは類似ファイルのオブジェクト。
- sep文字列、オプション
カードの文字や文字列を区切るために使われます。デフォルトの場合は区切りがありませんが、ご利用いただけます
'\\n'
例えば、各カードは、新しい行で分離される必要がある- endcardブル値、オプション
もし
True
(デフォルト)タイトル文字列の末尾に末尾カードを追加します- paddingブル値、オプション
もし
True
(デフォルト)空白を使用して2880文字の次の倍数に文字列を埋める- overwriteブル値、オプション
もし
True
もしあれば、出力ファイルを上書きします(存在すれば)。1つの問題を引き起こしましたOSError
もしFalse
また,出力ファイルが存在する.デフォルト値はFalse
それがそうです。バージョン 1.3 で変更:
overwrite
時代遅れのものに取って代わるclobber
論争する。
- tostring(sep='', endcard=True, padding=True)[ソース]¶
ヘッダを返す文字列表現形式.
デフォルトの場合,これはカード間にデリミタを使用せず,末尾カードを追加し,次の2880バイトの倍数にスペースで文字列を埋める.すなわち,返されるヘッダはFITSファイルに表示されているものとまったく同じである.
- パラメータ
- sep文字列、オプション
カードの文字や文字列を区切るために使われます。デフォルトの場合は区切りがありませんが、ご利用いただけます
'\\n'
例えば、各カードは、新しい行で分離される必要がある- endcardブル値、オプション
True(デフォルト値)であれば、末尾カードをタイトル文字列の末尾に追加します
- paddingブル値、オプション
True(デフォルト値)の場合、空白を使用して2880文字の次の倍数に文字列を充填します。
- 返品
- 応力.応力
FITSヘッダを表す文字列.
- totextfile(fileobj, endcard=False, overwrite=False)[ソース]¶
タイトルをテキストとしてファイルや類似ファイルのオブジェクトに書き込む.
これは以下のようなものです
>>> Header.tofile(fileobj, sep='\n', endcard=False, ... padding=False, overwrite=overwrite)
バージョン 1.3 で変更:
overwrite
時代遅れのものに取って代わるclobber
論争する。参考
- update(*args, **kwargs)[ソース]¶
新しいキーワードの値を使用してヘッダを更新し、既存のキーワードの値を更新します。そうでなければ、新しいキーワードを追加します。
dict.update
それがそうです。update
クラス辞書オブジェクトまたは反復可能オブジェクトを受け入れる。前者の場合、キーはタイトルキーワードでなければならず、値はスカラ値または(値、注釈)タプルであってもよい。反復器の場合、項は(キーワード、値)タプルまたは(キーワード、値、注釈)タプルでなければならない。任意のパラメータを受け取ることも可能であり,この場合,update()を再呼び出し,kwargs dictをその唯一のパラメータとする.つまり、
>>> header.update(NAXIS1=100, NAXIS2=100)
これは以下のようなものです
header.update({'NAXIS1': 100, 'NAXIS2': 100})
警告
なぜならこの方法の動作原理は
dict.update
それはHeader.update()
Astropy v 0.1における方法.古いAPIの使用は 捨てて使う. 長い間、今は除去されてきた。旧APIのほとんどの用法は以下のように置き換えることができる.代替::
header.update(keyword, value)
使用::
header[keyword] = value
代替::
header.update(keyword, value, comment=comment)
使用::
header[keyword] = (value, comment)
代替::
header.update(keyword, value, before=before_keyword)
使用::
header.insert(before_keyword, (keyword, value))
代替::
header.update(keyword, value, after=after_keyword)
使用::
header.insert(after_keyword, (keyword, value), after=True)
また見られる.
Header.set()
これは従来手法と類似したインタフェースを提供する新しい方法である.Header.update()
これは過渡期をもっと簡単にするのに役立つかもしれない。
- values()[ソース]¶
像
dict.values()
それがそうです。