あなたが何を求めているのか正確にはわかりませんが、ここに刺し傷があります...
Lipsum.pyの作成者は、Base64 でエンコードされたテキストのチャンクとして、圧縮データをインラインでコードに含めています。 Base64は、印刷可能な ASCII 文字を使用してバイナリ データを表すためのエンコード メカニズムです。Python コードにバイナリ データを含めるために使用できます。電子メールの添付ファイルにバイナリ データを含めるためによく使用されます。次に誰かが写真や PDF ドキュメントを送信したときに、生のメッセージを見てください。ほとんど同じことがわかります。
Python のbase64
モジュールは、データの base64 とバイナリ表現の間で変換するためのルーチンを提供します...データのバイナリ表現を取得したら、それがファイルから読み取ったか、文字列をデコードしたかに関係なく、どのように取得したかは問題ではありません。コードに埋め込まれます。
Python のgzip
モジュールを使用して、データを解凍できます。ファイルのようなオブジェクトが必要です...そしてPythonは、StringIO
文字列を適切なメソッドセットでラップしてファイルのように振る舞わせるためのモジュールを提供します。次のコードのlipsum.pyで確認できます。
sample_text_file = gzip.GzipFile(mode='rb',
fileobj=StringIO(base64.b64decode(DEFAULT_SAMPLE_COMPRESSED)))
StringIO
に格納されている base64 でエンコードされた値のバイナリ表現を含むオブジェクトを作成していますDEFAULT_SAMPLE_COMPRESSED
。
ここで言及されているすべてのモジュールは、Python 標準ライブラリのドキュメントで説明されています。
データが小さく比較的静的でない限り、このようにインラインでコードにデータを含めることは、一般的には良い考えとしてお勧めしません。それ以外の場合は、Python パッケージにパッケージ化して、変更の編集と追跡を容易にします。
正しい質問に答えましたか?