gpt4 book ai didi

Python:无法写入文件 - UnicodeEncodeError

转载 作者:行者123 更新时间:2023-11-28 22:48:49 27 4
gpt4 key购买 nike

此代码应将一些文本写入文件。当我尝试将文本写入控制台时,一切正常。但是当我尝试将文本写入文件时,出现 UnicodeEncodeError。我知道,这是一个常见问题,可以使用适当的解码或编码来解决,但我试过了,仍然得到相同的 UnicodeEncodeError。我做错了什么?

我附上了一个例子。

print "(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)".decode("utf-8")%(dict.get('name'),dict.get('description'),dict.get('ico'),dict.get('city'),dict.get('ulCislo'),dict.get('psc'),dict.get('weby'),dict.get('telefony'),dict.get('mobily'),dict.get('faxy'),dict.get('emaily'),dict.get('dic'),dict.get('ic_dph'),dict.get('kategorie')[0],dict.get('kategorie')[1],dict.get('kategorie')[2])

(StarBuy s.r.o.,Inzertujte s foto, auto-moto, oblečenie, reality, prácu, zvieratá, starožitnosti, dovolenky, nábytok, všetko pre deti, obuv, stroj....

with open("test.txt","wb") as f:
f.write("(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)".decode("utf-8")%(dict.get('name'),dict.get('description'),dict.get('ico'),dict.get('city'),dict.get('ulCislo'),dict.get('psc'),dict.get('weby'),dict.get('telefony'),dict.get('mobily'),dict.get('faxy'),dict.get('emaily'),dict.get('dic'),dict.get('ic_dph'),dict.get('kategorie')[0],dict.get('kategorie')[1],dict.get('kategorie')[2]))

UnicodeEncodeError: 'ascii' codec can't encode character u'\u010d' in position 50: ordinal not in range(128)

问题出在哪里?

最佳答案

要将 Unicode 文本写入文件,您可以使用 io.open() function :

#!/usr/bin/env python
from io import open

with open('utf8.txt', 'w', encoding='utf-8') as file:
file.write(u'\u010d')

这是 Python 3 的默认设置。

注意:如果你想写文本,你不应该使用二进制文件模式('b')。

# coding: utf8 定义源代码编码与它无关。

如果您在 site.py 或 Python 测试之外看到 sys.setdefaultencoding();假设代码已损坏。

关于Python:无法写入文件 - UnicodeEncodeError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24717808/

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