0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Pythonのエンコード

Posted at

以下のコードが何を出力するかわかるでしょうか。

import base64

text = 'abc'

print([ch for ch in text])
print([ch for ch in text.encode()])
print([ch for ch in base64.b64encode(text.encode())])

出力は以下のようになります。

['a', 'b', 'c']
[97, 98, 99]
[89, 87, 74, 106]

encode()はutf-8へのエンコードであり、その出力はバイト列として扱うことができますが、
バイト列をforループで回して要素を取得するとint型の数値が出力されます。

同じくbase64でエンコードした場合も、その出力はバイト列として扱うことができますが、
バイト列をforループで回して要素を取得するとint型の数値が出力されます。
そして、utf-8での出力から4/3にデータ量が増加しています。

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?