小编典典

删除Python 3中字符串文字前面的'b'字符

python

我是python编程的新手,我有点困惑。我尝试从字符串中获取字节以进行哈希和加密,但是我得到了

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'

阅读 219

收藏
2020-12-20

共1个答案

小编典典

解码是多余的

首先,您对这种情况有误解,这是因为对所发生的事情有误解。

您会得到,b因为您utf-8已对其进行编码,现在它是一个字节对象。

 >> type("text".encode("utf-8"))
 >> <class 'bytes'>

修正:

  1. 您可以先打印字符串
  2. 编码后冗余解码
2020-12-20