Python/C APIを使うために必要な全ての関数、型、マクロ定義は 次の行によってあなたのコードに取り込まれる。
#include "Python.h"
これは次の標準ヘッダファイルの取り込みを意味する:
<stdio.h>, <string.h>, <errno.h>と
(もし利用可能なら)
<stdlib.h>である。
Python.hで定義されたユーザから見える全ての名前は (取り込まれた標準ヘッダーファイルで定義されたものを除いて)、 接頭辞"Py"もしくは"_Py"の1つがついている。 "_Py"で始まる名前はPythonの実装によって内部的に使われるための ものであり、拡張モジュールの作成者によって使われるべきでない。 構造体メンバの名前は予約された接頭辞がついていない。
重要: ユーザコードは決して"Py"もしくは"_Py"で 始まる名前を定義するべきでない。これは読み手を混乱させ、 将来のPythonのバージョンへのユーザコードの移植性を危うくする。 そのバージョンはこれらの接頭辞で始まる名前を追加して定義する かもしれない。
ヘッダファイルは通常はPythonとともにインストールされる。Unixでは
これらはディレクトリ
$prefix/include/pythonversion/と
$exec_prefix/include/pythonversion/
に置かれる。ここで、$prefixと$exec_prefixは
Pythonのconfigureスクリプトへの対応するパラメータに
よって定義される。versionはsys.version[:3]である。
Windowsでは、ヘッダファイルは$prefix/includeに
インストールされる。ここで、$prefixはインストーラに
指定したインストールディレクトリである。
ヘッダを取り込むためには、コンパイラのインクルードファイルの 検索パスに(もし異なるなら)両方のディレクトリを置きなさい。 検索パスに親ディレクトリを置いて、 "#include <python1.5/Python.h>"を使ってはならない。 $prefixの下にあるプラットフォームに独立なヘッダが $exec_prefixからプラットフォームに特定のヘッダを 取り込むため、複数のプラットフォームでの構築では、これは 失敗するからである。