如何将带有变音符号的字符串打印到文件中?

2024-04-19 18:14:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个波兰语单词作为字符串变量需要打印到文件中:

# coding: utf-8

a = 'ilośc'
with open('test.txt', 'w') as f:
    print(a, file=f)

这个扔了

^{2}$

在寻找现有答案(with ^{},或with ^{})并尝试各种咒语,我最终管理了要创建的文件。在

不幸的是,写的是b'ilośc',而不是{}。当我试图在打印到文件之前对其进行解码时,我回到了最初的错误和相同的回溯。在

如何将包含音调符号的str写入文件,使其成为字符串而不是字节表示?


Tags: 文件字符串答案testtxtaswithopen
2条回答

回溯表明您试图使用cp1252编码保存'ś''\u015b')字符,该编码不能表示这个Unicode字符(有超过一百万个Unicode字符,cp1252是一个单字节编码,只能代表256个字符)。在

使用可以表示所需字符的字符编码:

with open(filename, 'w', encoding='utf-16') as file:
    print('ilośc', file=file)
a = 'ilośc'
with open('test.txt', 'w') as f:
    f.write(a)

您甚至可以使用二进制模式写入文件:

^{pr2}$

相关问题 更多 >