将Unicode文本写入文本文件?

将Unicode文本写入文本文件?

我从Google文档中提取数据,处理数据,并将其写入文件(最终我将粘贴到Wordpress页面)。

它有一些非ASCII符号。如何安全地将这些转换为可以在HTML源代码中使用的符号?

目前,我正在将所有内容转换为Unicode,并将其连接到Python字符串中,然后执行以下操作:

import codecs
f = codecs.open('out.txt', mode="w", encoding="iso-8859-1")f.write(all_html.encode("iso-8859-1", "replace"))

最后一行存在编码错误:

UnicodeDecodeError:‘ASCII’编解码器无法解码12286位置的字节0xa0:序数不在范围内(128个)

部分解决办法:

此Python运行时没有错误:

row = [unicode(x.strip()) if x is not None else u'' for x in row]all_html = row[0] + "<br/>" + row[1]f = open('out.txt', 'w')f.
write(all_html.encode("utf-8"))

但是如果我打开实际的文本文件,我会看到很多符号,比如:

Qur’an

也许我需要写点别的东西而不是文本文件?


繁星点点滴滴
浏览 753回答 3
3回答

jeck猫

在Python 3中,Unicode字符串处理已经标准化。CHAR已存储在内存中的Unicode(32位)中。您只需在utf-8中打开文件即可。(32位Unicode到utf-8的转换将自动从内存执行到文件。)out1&nbsp;=&nbsp;"(嘉南大圳&nbsp;ㄐㄧㄚ ㄋㄢˊ ㄉㄚˋ ㄗㄨㄣˋ&nbsp;)"fobj&nbsp;=&nbsp;open("t1.txt",&nbsp;"w",&nbsp;encoding="utf-8")fobj.write(out1)fobj.close()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python