首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >写入文件时,非英语字符的格式不正确

写入文件时,非英语字符的格式不正确
EN

Stack Overflow用户
提问于 2014-11-07 18:34:43
回答 1查看 39关注 0票数 0

我需要在文件中写几行。这些行可以是英文或中文。我需要一些预定义的格式。我使用下面的python代码来实现它。

代码语言:javascript
复制
self._file.write(u"%-9s %-21s%-6s %-6s                %%\n" % (stop['stop_id'], stop['stop_name'], self.format_time(stop.get('arrival'), stop.get('exit')), self.format_time(stop.get('departure'), stop.get('enter'))))

停止字典被正确地构造。对于英文名称,它的格式是正确的,但对于中文名称,格式不正确。我附上了一个屏幕截图来解释这个问题。

我需要改变我写文件的方式或者其他需要的东西吗??

EN

回答 1

Stack Overflow用户

发布于 2014-11-07 19:17:05

我的格式是正确的。我不能想象为什么Python要改变它的格式。

您的问题是Sublime文本无法正确显示中文文本。这可能是由于用于显示中文字符的字符集造成的。

显示不正确行的十六进制转储,然后我们才能判断这是否是Python问题

这是阅读像courrier new这样的固定字符集格式的邮件和像arial这样的成比例字符集的邮件时的一个常见问题,即使是纯英语文本也是如此。

我做了一些使用UTF-8字符的测试,使用UTF-8中的2个字节,例如éè和Python (2.7)根据字符数而不是字节数正确地格式化unicode字符串-对不起,我没有处理中文单词...

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26799250

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档