【发布时间】:2016-02-23 08:00:36
【问题描述】:
我刚开始在一些 python 脚本上使用 VSCode。当我尝试打印如下内容时:
print('%s' % string.decode('utf-8'))
我在输出窗口中收到以下错误:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 16-20: ordinal not in range(128)
我知道它可能是因为输出流只是ascii,但我找不到可以更改它的地方...,要么我错过了它,要么就是它原来的样子?
我在 Win7 64bit 上使用 v0.10.8。
提前致谢!
【问题讨论】:
-
试试
.decode('utf-16') -
相同的代码在 IEP(另一个 python IDE)中工作。所以这不是代码问题。
-
嗯,如果你捕捉到 UnicodeEncodeError 并打印
repr(string),它会在 VSCode 和其他 IDE 中打印什么? -
输出是 '\xe6\xad\xa6\xe6\xb1\x89\xe6\xac\xa3\xe6\x99\xaf\xe9\x80\x9a',它是 utf-8 编码的。
-
您好,这是 VS Code 的 Python 扩展中的一个错误,已针对此问题提出了一个错误。希望有人能够帮助解决这个问题。潜在问题的详细信息已在此处提出stackoverflow.com/questions/37657455/…