0
所以,我写了加密数据到txt文件。
而且我使用readline()
来读取该行。
但我得到的是字符串类型的值。
Simplecrypt:数据解密必须是字节
在文本文件中,它看起来像这样:
`b'sc\x00\x01\x9eU\x86\x8aV\x8f\xa3\x9f\xf4iD\x9bv\xea\x05\x11\xdeo\xd7 \xef\xb1iK\xc1;\xa5\x02\[email protected]\xe4|\x9b^\xe5\xf9e\xc4\xf30\xaa\xe8\xcc>\xf8a\xfa;"\xfb)\xc7z|\xc9\x9c\x1c\x19\xc1}\x15\xdd_\xfd\x90z\x865\xe9O\xef\xd9\t\x06\x9c'`
(b'~~~~~~')
但是,当我看到在Python中的文本文件,并把它的变量,它看起来像这样:
'b\'sc\\x00\\x01\\x9eU\\x86\\x8aV\\x8f\\xa3\\x9f\\xf4iD\\x9bv\\xea\\x05\\x11\\xdeo\\xd7 \\xef\\xb1iK\\xc1;\\xa5\\x02\\[email protected]\\xe4|\\x9b^\\xe5\\xf9e\\xc4\\xf30\\xaa\\xe8\\xcc>\\xf8a\\xfa;"\\xfb)\\xc7z|\\xc9\\x9c\\x1c\\x19\\xc1}\\x15\\xdd_\\xfd\\x90z\\x865\\xe9O\\xef\\xd9\\t\\x06\\x9c\'\n'
('b\'~~~~~~\'\n')
因为这种差异,我收到一条错误消息:
you cannot use a string because no string encoding will accept all possible characters.
它认识到这是一个字符串。
如何从文件读取并将其放入字节类型的变量中?
的文本文件是“错误的”恕我直言。看起来你已经将'bytes'对象的'repr()'形式保存到一个文本文件中,并且现在正试图将该表示解析回'bytes'对象。我将在文本文件中保存更常见的二进制数据表示,例如Base64。查看Python标准库中的'binascii'模块。 – BlackJack