如何在Python中进行安全的二进制比较?
我有一段代码,它在运行时出现了一个警告:
UnicodeWarning: Unicode 等值比较未能将两个参数转换为 Unicode - 将它们视为不相等
try:
f = open_old(filename, "rb")
aBuf = f.read(4)
f.close()
except:
aBuf=b''
if aBuf[:3] == b'\xEF\xBB\xBF':
print("...")
我想知道如何正确地从文件中读取3个字节,并检查它们的值。
我希望找到一个在 Python 2.6 及更新版本(包括 3.x)中都能正常工作的解决方案。
1 个回答
1
解决办法是,在你读取字符串之后,把它转换成字节:aBuf = bytes(f.read(4))
。