首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python中的重音

Python中的重音
EN

Stack Overflow用户
提问于 2014-05-21 00:51:04
回答 1查看 355关注 0票数 0

我知道这个问题并不新鲜,但我不知道如何解决它。我需要转换一个.opl文件(vim大纲格式)到.mm (自由思想)。重点是,原始文件是用意大利语编写的,所以充满了重音,在使用python脚本(plugin)进行转换的过程中,我得到了一个unicode错误。这就是细节

代码语言:javascript
复制
python outline_freemind.py test.otl > test.mm
代码语言:javascript
复制
File "outline_freemind.py", line 114, in <module>
    xmltree.write(sys.stdout, 'utf-8')
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py", line 815, in write
    serialize(write, self._root, encoding, qnames, namespaces)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py", line 934, in _serialize_xml
    _serialize_xml(write, e, encoding, qnames, None)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py", line 934, in _serialize_xml
    _serialize_xml(write, e, encoding, qnames, None)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py", line 934, in _serialize_xml
    _serialize_xml(write, e, encoding, qnames, None)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py", line 927, in _serialize_xml
    v = _escape_attrib(v, encoding)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py", line 1085, in _escape_attrib
    return text.encode(encoding, "xmlcharrefreplace")
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 9: ordinal not in range(128)

我试着在脚本的开头插入

代码语言:javascript
复制
# -*- coding:utf-8-*-

没有成功。

EN

回答 1

Stack Overflow用户

发布于 2014-05-21 01:19:07

您的插件声明的编码与您遇到的问题无关:声明的唯一目的是告诉Python解释器程序本身的编码,并且您的程序不包含超出ASCII范围的字符,因此不可能产生误解。

如果问题与程序的编码有关,则会得到如下错误:

代码语言:javascript
复制
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "outline_freemind.py", line 115
SyntaxError: Non-ASCII character '\xc3' in file outline_freemind.py on line 115, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

..。但是由于你实际上得到了一个UnicodeDecodeError,这意味着错误发生在你的插件对非ASCII码输入的处理中……所以你应该把这个报告给插件的作者。

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

https://stackoverflow.com/questions/23765672

复制
相关文章

相似问题

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