gpt4 book ai didi

python - 文本比较时出现 UnicodeDecodeError

转载 作者:行者123 更新时间:2023-11-30 23:04:47 25 4
gpt4 key购买 nike

在执行子字符串匹配时,我收到 UnicodeDecodeError: 'ascii' codec can't Decode byte 0xc3 inposition 8: ordinal not in range(128)

代码:

for bhk in bed_bath:
if "Bedroom" in bhk.text or "Chambre à coucher" in bhk.text or "Slaapkamer" in bhk.text:
bhk_count += 1

如何解决?

我在文件的开头包含了以下几行。

#!/usr/bin/env python
# -*- coding: utf-8 -*-

最佳答案

我假设您使用的是 python 2。

出现此问题是因为 bhk.​​text 是 unicode 字符串。

当您进行诸如 bhk.text 中的“Chambre à coucher”之类的比较时,文字字符串(非 unicode 字符串)需要转换为 unicode 字符串。

由于您声明文件采用 utf-8 编码,unicode char à 被编码为字符串 "\xc3\xa0"

当 python 尝试使用默认编解码器 (ascii) 转换 char“0xc3”时,它无法将其映射到 unicode 字符并引发该错误。

解决方案是将非 ASCII 字符的字符串声明为 unicode,例如:

u"Chambre à coucher" in bhk.text

关于python - 文本比较时出现 UnicodeDecodeError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33547909/

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