Python 3 strとbyteの相互回転問題


pythonはスクリプト言語としてstrとbyteで文字列を表すことができることはよく知られています.関数を使用して得られる文字列は必ずしも望ましいタイプではないので、文字を同じタイプに変換して処理する必要があります.
# bytes object
 b = b"this is byte"

 # str object
 s = "this is str"

 # str to bytes
 bytes(s, encoding = "utf8")

 # bytes to str
 str(b, encoding = "utf-8")

 # an alternative method
 # str to bytes
 str.encode(s)   #     bytes

 # bytes to str   # bytes    
 bytes.decode(b)

以上の方法でbyteとstrを同じタイプに変換して処理できます.ちなみに、どんなタイプなのか分からない場合はtype関数で変数のタイプを得ることができます.