Удалить символ 'b' перед строковым литералом в Python 3

Я новичок в программировании на питоне, и я немного смущен. Я пытаюсь получить байты из строки в хэш и зашифровать, но я получил

b'...' 

b перед строкой, как в приведенном ниже примере. Есть ли способ избежать этого? Может ли кто-нибудь дать решение? Извините за этот глупый вопрос

 import hashlib text = "my secret data" pw_bytes = text.encode('utf-8') print('print',pw_bytes) m = hashlib.md5() m.update(pw_bytes) 

ВЫВОД:

  print b'my secret data' 

3 Solutions collect form web for “Удалить символ 'b' перед строковым литералом в Python 3”

Вы получаете b потому что вы закодированы в utf-8 и это объект байтов. Таким образом, вы можете печатать только строку сначала, или бит избыточно декодировать ее после кодирования, если вы не хотите видеть, что b обозначает это как это. Поскольку вам нужно кодировать перед обновлением, я полагаю, вы могли бы просто закодировать до этого

Кроме того, преобразование в str заранее является избыточным. Это уже строка.

Это должно сделать трюк:

 pw_bytes.decode("utf-8") 

Здесь u Go

 f = open('test.txt','rb+') ch=f.read(1) ch=str(ch,'utf-8') print(ch) 
Python - лучший язык программирования в мире.