Python には数多くの codec が組み込みで付属します。これらは C 言語の 関数、対応付けを行うテーブルの両方で提供されています。以下のテーブル では codec と、いくつかの良く知られている別名と、エンコーディング が使われる言語を列挙します。別名のリスト、言語のリストともしらみつぶしに 網羅されているわけではありません。大文字と小文字、またはアンダースコア の代りにハイフンにしただけの綴りも有効な別名です。
多くの文字セットは同じ言語をサポートしています。これらの文字セットは 個々の文字 (例えば、EURO SIGN がサポートされているかどうか) や、 文字のコード部分への割り付けが異なります。特に欧州言語では、 典型的に以下の変種が存在します:
Codec | 別名 | 言語 |
---|---|---|
ascii | 646, us-ascii | イギリス |
cp037 | IBM037, IBM039 | イギリス |
cp424 | EBCDIC-CP-HE, IBM424 | ヘブライ |
cp437 | 437, IBM437 | イギリス |
cp500 | EBCDIC-CP-BE, EBCDIC-CP-CH, IBM500 | 西ヨーロッパ |
cp737 | ギリシャ | |
cp775 | IBM775 | バルト沿岸国 |
cp850 | 850, IBM850 | 西ヨーロッパ |
cp852 | 852, IBM852 | 中央および東ヨーロッパ |
cp855 | 855, IBM855 | ブルガリア、ベラルーシ、マケドニア、ロシア、セルビア |
cp856 | ヘブライ | |
cp857 | 857, IBM857 | トルコ |
cp860 | 860, IBM860 | ポルトガル |
cp861 | 861, CP-IS, IBM861 | アイスランド |
cp862 | 862, IBM862 | ヘブライ |
cp863 | 863, IBM863 | カナダ |
cp864 | IBM864 | アラビア |
cp865 | 865, IBM865 | デンマーク、ノルウェー |
cp869 | 869, CP-GR, IBM869 | ギリシャ |
cp874 | タイ | |
cp875 | ギリシャ | |
cp1006 | Urdu | |
cp1026 | ibm1026 | トルコ |
cp1140 | ibm1140 | 西ヨーロッパ |
cp1250 | windows-1250 | 中央および東ヨーロッパ |
cp1251 | windows-1251 | ブルガリア、ベラルーシ、マケドニア、ロシア、セルビア |
cp1252 | windows-1252 | 西ヨーロッパ |
cp1253 | windows-1253 | ギリシャ |
cp1254 | windows-1254 | トルコ |
cp1255 | windows-1255 | ヘブライ |
cp1256 | windows1256 | アラビア |
cp1257 | windows-1257 | バルト沿岸国 |
cp1258 | windows-1258 | ベトナム |
latin_1 | iso-8859-1, iso8859-1, 8859, cp819, latin, latin1, L1 | 西ヨーロッパ |
iso8859_2 | iso-8859-2, latin2, L2 | 中央および東ヨーロッパ |
iso8859_3 | iso-8859-3, latin3, L3 | エスペラント、マルタ |
iso8859_4 | iso-8859-4, latin4, L4 | バルト沿岸国 |
iso8859_5 | iso-8859-5, cyrillic | ブルガリア、ベラルーシ、マケドニア、ロシア、セルビア |
iso8859_6 | iso-8859-6, arabic | アラビア |
iso8859_7 | iso-8859-7, greek, greek8 | ギリシャ |
iso8859_8 | iso-8859-8, hebrew | ヘブライ |
iso8859_9 | iso-8859-9, latin5, L5 | トルコ |
iso8859_10 | iso-8859-10, latin6, L6 | 北欧 |
iso8859_13 | iso-8859-13 | バルト沿岸国 |
iso8859_14 | iso-8859-14, latin8, L8 | ケルト |
iso8859_15 | iso-8859-15 | 西ヨーロッパ |
koi8_r | ロシア | |
koi8_u | ウクライナ | |
mac_cyrillic | maccyrillic | ブルガリア、ベラルーシ、マケドニア、ロシア、セルビア |
mac_greek | macgreek | ギリシャ |
mac_iceland | maciceland | アイスランド |
mac_latin2 | maclatin2, maccentraleurope | 中央および東ヨーロッパ |
mac_roman | macroman | 西ヨーロッパ |
mac_turkish | macturkish | トルコ |
utf_16 | U16, utf16 | 全ての言語 |
utf_16_be | UTF-16BE | 全ての言語 (BMP only) |
utf_16_le | UTF-16LE | 全ての言語 (BMP only) |
utf_7 | U7 | 全ての言語 |
utf_8 | U8, UTF, utf8 | 全ての言語 |
数多くの codec は Python 特有なので、それらの codec 名は Python の外では無意味なものとなります。これらの codec のいくつかは Unicode 文字列からバイト文字列への変換を行わず、むしろ単一の 引数をもつ全写像関数はエンコーディングとみなすことができるという Python codec の性質を利用しています。
以下に列挙した codec では、``エンコード'' 方向の結果は常にバイト文字列 方向です。``デコード'' 方向の結果はテーブル内の被演算子型として列挙 されています。
Codec | 別名 | 被演算子の型 | 目的 |
---|---|---|---|
base64_codec | base64, base-64 | byte string | 被演算子を MIME base64 に変換します |
hex_codec | hex | byte string | 被演算子をバイトあたり 2 桁の 16 進数の表現に変換します |
idna | Unicode string | RFC 3490 を実装しています。 バージョン2.3 以降で新規追加された 仕様です。 encodings.idna も参照してください | |
mbcs | dbcs | Unicode string | Windows のみ: 被演算子を ANSI コードページ (CP_ACP) に従ってエンコードします |
palmos | Unicode string | PalmOS 3.5 のエンコーディングです | |
punycode | Unicode string | RFC 3492 を実装しています。 バージョン2.3 以降で新規追加された 仕様です。 | |
quopri_codec | quopri, quoted-printable, quotedprintable | byte string | 被演算子を MIME quoted printable 形式に変換します |
raw_unicode_escape | Unicode string | Python ソースコードにおける raw Unicode リテラルとして 適切な文字列を生成します。 | |
rot_13 | rot13 | byte string | 被演算子のシーザー暗号 (Caesar-cypher) を返します |
string_escape | byte string | Python ソースコードにおける文字列リテラルとして適切な 文字列を生成します。 | |
undefined | any | 全ての変換に対して例外を送出します。 バイト列と Unicode 文字列との間で自動的な型強制をおこないたくない 時にシステムエンコーディングとして使うことができます。 | |
unicode_escape | Unicode string | Python ソースコードにおける Unicode リテラルとして適切な 文字列を生成します。 | |
unicode_internal | Unicode string | 被演算子の内部表現を返します。 | |
uu_codec | uu | byte string | 被演算子を uuencode を用いて変換します。 |
zlib_codec | zip, zlib | byte string | 被演算子を gzip を用いて圧縮します。 |
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。