Pythonで文字列をBase64文字列に変換(エンコード)する

スポンサーリンク

Pythonで文字列をBase64文字列に変換(エンコード)してみます。

なお、今回はBase64文字列に変換するためにBase64モジュールを用います。このモジュール・ライブラリは、Pythonの標準ライブラリとなっていますので、事前にインストールする必要はありません。

■Python

今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)

■Base64モジュールを用いて文字列をBase64文字列に変換する

では、早速Base64モジュールを用いて文字列をBase64文字列に変換するスクリプトを書いていきます。

■コード

import base64

test_text = "Hello,New world!"
ascii_data = test_text.encode('ascii')
base64_byte_data = base64.b64encode(ascii_data)

encode_text = base64_byte_data.decode('ascii')

print(encode_text)

importでbase64モジュールを呼び出します。test_textという変数を定義し、その中に英語の文字列を格納します。今回は「Hello,New world!」とします。

次にascii_dataという変数を定義し、その中でtest_text変数に対してencode()を用います。括弧内には引数,パラメータとして「’ascii’(ASCII(アスキー、情報交換用米国標準コード)」を渡します。これでtest_text変数内の文字列が、asciiに変換されascii_data変数に格納されます。

格納後、base64_byte_dataという変数を定義し、base64.b64encode()を用います。括弧内には引数,パラメータとしてascii_data変数を渡します。これでasciiに変換された文字列がBase64文字列に変換され、base64_byte_data変数に格納されます。

この後、encode_textという変数という変数を定義し、その中でbase64_byte_data変数に対してdecode()を用います。括弧内には引数,パラメータとして「’ascii’(ASCII(アスキー、情報交換用米国標準コード)」を渡します。これでbase64_byte_data変数内のBase64文字列がasciiにデコード(解読し元に戻す)され、encode_text変数内に格納されます。

最後にencode_text変数内の情報をprint()を用いて出力します。

■実行・検証

コードを記述後、スクリプトを「string_b64_s.py」という名前で、Pythonが実行されている作業ディレクトリ(カレントディレクトリ)に保存し、コマンドプロンプトから実行してみます。

実行してみると、Base64モジュールを用いて文字列をBase64文字列に変換し、変換されたBase64文字列をprint()で出力させることができました。

コメント

タイトルとURLをコピーしました