在 Python 3 中处理文件内容:解决“TypeError: a bytes-like object is required, not 'str'”
在 Python 中2.7 中,从文件中读取行并对其执行操作非常简单。但是,在迁移到 Python 3.5 时,用户可能会遇到这样的问题:for 循环中包含字符串比较的“if”语句会引发“TypeError:需要类字节对象,而不是‘str’”。这种差异是由于 Python 3 中对文件内容的不同处理造成的。
在 Python 3 中,文件默认以二进制模式打开,这意味着从文件中读取的所有数据都以字节对象而不是字符串的形式返回。在 for 循环中执行字符串比较时,这可能会导致错误。
要解决此问题,有两个选项:
通过遵循这些方法之一,您可以可以确保在 Python 3 中正确处理文件内容,防止出现 TypeError 并允许您不间断地继续编码。
以上是在 Python 3 中处理文件时如何修复'TypeError: a bytes-like object is required, not 'str'”?的详细内容。更多信息请关注PHP中文网其他相关文章!