在Python中将字节列表写入文件

问题描述 投票:-1回答:2

我有一个字节列表作为encrypted_message,我从一个文件中读取,如下所示:

[b'\x17Q\xf7\xf8\x1b\xac\xc1\x05\x9cC\xc8)s\xb2x+p\xc5)@\xcc\x998\xd1P\x95
\xd8\xb9\xfaP\xe9\xeb!\x0c\xd9\xea\x04\xa7D\xddN\xc2\xfe\n', b'\x16p\xa6\x9d8
\xf3\xc4\x91^T\xbb\xac\x02t05\xbf\xcc6\x8a\xe5f\x11\xd2\xeaC,An\x7fw\x8f;
\xa5\xdf\x8f\xee\x87J\xb5W\xb0\xcf\x8e\x08\xfdGw\xa2?vYI\x0b\x99\xd7\xb7
\xce\xdfI\xb0\xb6\x00\x8b\xf8%\x11\xbc\xe2\xcb\xddA\x1b\xe6l\xd1\xe2\\\xf3
\rw\xa8s\xd8\x9b\xc5\\\xd7Yk\xc3\xb4\xe0\xde\xbdx\xe4\r\xf0G\x12/\x1a
\x17y\xc2\xaf\xb0\xe4\xa9\x02\xa7\xa9\xa6\x0fU\x89\xc1\xe1\x03ua\xd2F\xa7s
\x19K\xcf\x0c#\xb2\xe1<\x9d*\x1f8TF\xedX\xd4\x11g\x85\xb98\x15\xe3\x97
\xb8\x90_\x9ayM\x1e\xe6JW\x10\x97\xc1\x10\xc6\xb9\x1d\x9c \x16!\xb6M\x97Q\xe9
\xfe\n', b'\x9f\xbd\x0fA\xd2\x92\x10\x87u/H\xcb\xa9\x9e\x95\x80^\xf0Ll
\x8b\x81\xc3\x04\xb6F\xe4 \x9a\xd5\\&>>\xa1\x87{\xd3\xc3\xc7\x15D~\xd8\xd5
\x84\x1b@\xa5\x14\xfb5\x8a\xb0\xa5\xf1\x1aL{\xc9jW\x08Z2l\xb7\x0c\xb0\xce2
\x97\xb9\xdd\xc0%\xbf\x89q{\xd7\xa6l']

现在,我想将其写入另一个文件。我正在尝试以下代码:

with open('encrypted_data.txt', 'wb') as temp_file:
    for item in enumerate(encrypted_message):
        temp_file.write(item)

但我不断收到以下错误:

TypeError:write()参数必须是str,而不是tuple

请有人帮忙吗?!先感谢您。

python list file byte
2个回答
0
投票

enumerate返回(index, item)的元组,其中index从0开始计数。你不使用索引,所以你根本不需要使用enumerate

with open('encrypted_data.txt', 'wb') as temp_file:
    for item in encrypted_message:
        temp_file.write(item)

这是文件对象本身有一个帮助器的常见用例:

with open('encrypted_data.txt', 'wb') as temp_file:
    temp_file.writelines(encrypted_message)

0
投票

enumerate之后移除in然后它工作

© www.soinside.com 2019 - 2024. All rights reserved.