最近在我的工作中,我们带来了一台服务器并对其进行了配置。只是把语境化。现在的问题是我用Java编写代码(Cogroo,葡萄牙语语法检查器),我们用Python编写了一些代码,为了使这两种代码一起工作,我在Python代码中调用jar文件。当我在我的本地机器上工作时,一切都很好,当我把服务器a放进去时有一些问题。在
>>> a = u"ele anda à cavalo"
>>> print(type(a))
>>> <type 'unicode'>
>>> a
u'ele anda \xe0 cavalo'
>>> print(a)
ele anda à cavalo
在我的本地机器和服务器终端上,它工作得很好,但是如果我在Python脚本上做同样的操作,它会给我带来一个错误,比如“ascii'codec cannot encode character u'\xe0'print Python”。在脚本中,我甚至不能打印unicode字符串。而当我试图调用output = subprocess.check_output(cd.encode("utf-8"), shell=True)
var cd有java代码和路径cd = 'java -jar path/file.jar GrammarChecker -country br -lang pt -text "' + auxTextPure + '"'
时,var auxTextPure
始终是unicode字符串。在
看这有两个问题,第一个问题是当var auxTextPure
是一个没有特殊字符的istring,比如a menino它会返回一个输出,比如Os行列式concordam em n?mero(单数或复数)e em g?nero(mangorito ou feminino)com o substivivo a que se referem。我需要带重音符号的输出,第二个错误是当使用带有重音符号的字符串时,Ele andaácavalo它会使这个输出验证一次重复??o de palavras.但正确的输出是o sinal indicatio de crase indica que temos“a”+“a”expressos em um sóa”。我的意思是“我的意思是说,我的意思是说,我的意思是说,我的意思是说,我的意思是说,我的意思是说,我的意思是说,我的意思是说,我的意思是说,我的意思是说我的意思。Portanto,não ocorre crase antes de palavras manganas。我知道问题是因为服务器上和脚本上特定的Python或django无法翻译unicode(UTF-8)并在屏幕上甚至在变量上打印。我试着做cd.encode("utf-8")
auxTextPure.encode("utf-8")
auxTextPure.decode("utf-8")
和其他一些代码,比如import codecs
,使用这个编解码器,我试图在互联网上找到这个问题,但是在任何地方我都能找到解决这个问题的方法,有人能帮我吗?非常感谢,很抱歉我的英语不好。
利安德罗·科斯塔瓦拉多
一个字符串应该先被解码成UTF-8,然后再进行编码,反之亦然。你永远不知道字符串最初是编码还是解码。在
1。在
一。在
^{pr2}$2。在
一。在
3。在
一。在
^{pr2}$4。在
一。在
^{pr2}$很有趣,不是吗?在
相关问题 更多 >
编程相关推荐