Python - 文字列をエンコードする

文字列を Unicode エスケープされたバイト列に変換

文字列からバイト列への変換(エンコード)は encode() 関数を使用します。第一引数には unicode-escape、または unicode_escape を指定します。

s = 'あいうえお'

print(s.encode('unicode-escape'))
# b'\\u3042\\u3044\\u3046\\u3048\\u304a'
文字列を Unicode エスケープされたバイト列に変換

文字列を URL エンコード: urllib.parse.quote()

文字列を URL エンコード (パーセントエンコード) するには urllib.parse.quote() 関数を使用します。

import urllib.parse

s = 'あいうえお'

print(urllib.parse.quote(s))
# %E3%81%82%E3%81%84%E3%81%86%E3%81%88%E3%81%8A
文字列を URL エンコード: urllib.parse.quote()

文字コードを指定して URL エンコードしたい場合は、第二引数に指定できます。第二引数を省略した場合、utf-8 でエンコードされます。

import urllib.parse

s = 'あいうえお'

print(urllib.parse.quote(s, encoding='shift-jis'))
# %82%A0%82%A2%82%A4%82%A6%82%A8
文字列を URL エンコード: urllib.parse.quote()

関連記事