Python 3.4 ではa85encodeandb85encode関数 (および対応するデコード関数) が追加されました。
2つの違いは何ですか?ドキュメントには、「エンコーディングに使用される文字マップなどの詳細が異なります」と記載されています。、しかし、これは不必要に曖昧に思えます。
a85encode文字マッピングを使用します。
!"#$%&'()*+,-./0123456789:;<=>?@
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`
abcdefghijklmnopqrstu
withzは、4 つのゼロ バイト (の代わりに) を表す特殊なケースとして使用されます!!!!!。
b85encode文字マッピングを使用します。
0123456789
ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
!#$%&()*+-;<=>?@^_`{|}~
特別な略語はありません。
選択肢があれば、 を使用することをお勧めしますa85encode。文字マッピングはすべての文字を ASCII 順序で使用するため、で実装するのは少し簡単 (かつ効率的) でCあり、圧縮されていないバイナリ データでは一般的ではない、多数のゼロを含むデータを格納する際にわずかに効率的です。