gpt4 book ai didi

python - 'ascii' 编解码器无法在位置 * ord 不在范围 (128) 处对字符进行编码

转载 作者:太空狗 更新时间:2023-10-29 18:19:24 25 4
gpt4 key购买 nike

stackoverflow 上有几个线程,但我找不到解决整个问题的有效方法。

我从 urllib 读取函数收集了大量文本数据,并将其存储在 pickle 文件中。

现在我想把这个数据写入一个文件。在写作时我遇到了类似于 -

的错误
'ascii' codec can't encode character u'\u2019' in position 16: ordinal not in range(128)

大量数据正在丢失。

我想从 urllib 读取的数据是字节数据

我试过了

   1. text=text.decode('ascii','ignore')
2. s=filter(lambda x: x in string.printable, s)
3. text=u''+text
text=text.decode().encode('utf-8')

但我仍然以类似的错误告终。有人可以指出一个适当的解决方案。编解码器也会工作。如果冲突字节未作为字符串写入文件,我没有问题,因此可以接受丢失。

最佳答案

您可以通过Django 模块的smart_str 来实现。试试这个:

from django.utils.encoding import smart_str, smart_unicode

text = u'\u2019'
print smart_str(text)

您可以通过以管理员权限启动命令 shell 并运行此命令来安装 Django:

pip install Django

关于python - 'ascii' 编解码器无法在位置 * ord 不在范围 (128) 处对字符进行编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15364266/

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