PythonでBase64エンコーディングを行う際、改行の扱いについて説明します。
Pythonのbase64
モジュールは、バイナリデータを印刷可能なASCII文字列にエンコードし、また逆にデコードするための関数を提供しています。しかし、このエンコーディングの過程で改行が挿入されることがあります。
具体的には、base64.encode()
関数は出力の76バイトごとに改行を追加します。これは、メールで安全に送信したり、URLの一部として使ったり、HTTP POSTリクエストの一部に含めるために適しています。
しかし、この改行が不要な場合もあります。そのような場合、base64.b64encode()
関数を使用すると良いでしょう。この関数は、bytes-like object
をASCII bytes
にエンコードします。
以下に、base64.b64encode()
関数を使用した例を示します。
import base64
def main():
basetext = "poi poi pui pui"
base64_object = base64.b64encode(basetext.encode())
print(base64_object)
if __name__ == "__main__":
main()
このコードを実行すると、Base64エンコーディングされたbytes
オブジェクトが出力されます。この出力には改行は含まれません。
以上、PythonでBase64エンコーディングを行う際の改行の扱いについてでした。