在Python 3中删除字符串文本前面的“b”字符do

2024-04-26 18:30:25 发布

您现在位置: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'

Tags: 字符串textdatasecret字节bytesmy编程
3条回答

给你

f = open('test.txt','rb+')
ch=f.read(1)
ch=str(ch,'utf-8')
print(ch)

解码是多余的

你一开始只是犯了这个“错误”,因为你对发生的事情有误解。

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

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

修复:

  1. 你可以先打印字符串
  2. 编码后冗余解码

这应该可以做到:

pw_bytes.decode("utf-8")

相关问题 更多 >