私がやりたいのは、文字列または int のタプルをシリアライズおよびアンシリアライズすることだけです。
pickle.dumps() を見ましたが、バイトのオーバーヘッドが大きいです。基本的に、必要なスペースの約 4 倍を占めるように見えます。その上、必要なのは基本的な型だけで、オブジェクトをシリアル化する必要はありません。
marshal はスペースの点で少し優れていますが、結果は厄介な \x00 バイトでいっぱいです。理想的には、結果を人間が読めるようにしたいと考えています。
repr() と eval() だけを使用することを考えましたが、eval() を使用せずにこれを達成できる簡単な方法はありますか?
これは、ファイルではなくデータベースに保存されます。TEXT 列と varchar の要求に違いが生じる可能性があるため、バイト オーバーヘッドは重要です。一般に、データのコンパクトさは db パフォーマンスのすべての領域に影響します。