gpt4 book ai didi

python - TypeError : must be str, 不是字节错误

转载 作者:行者123 更新时间:2023-11-28 21:15:21 26 4
gpt4 key购买 nike

在我的 python 代码中,执行此行时出现此错误。

fo.write(text.replace("'","").encode("utf8"));

错误:

TypeError: must be str, not bytes

它在 python 2.7 上运行良好,但在 3 上运行时出错。

最佳答案

在 Python 3 中,以文本模式打开的文件对象要求您编写 Unicode 文本

您将文本编码为 UTF-8 字节,但文件对象负责进行编码。不要对文本进行编码。

您可以在 Python 2 中获得相同的行为,方法是使用 io.open() function而不是内置的 open() 函数。 Python 2 中的 io 模块是 Python 3 中使用的新 I/O 基础结构的反向移植。

如果您需要编写多语言代码(Python 代码可在 Python 2 和 Python 3 上运行),只需从 io 导入:

import io

with io.open(filename, 'w', encoding='utf8') as fo:
fo.write(text.replace("'",""))

Python 3 内置的 open() 函数与 io.open() 完全相同。

关于python - TypeError : must be str, 不是字节错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30395237/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com