python中用于外语的Windows命令行错误

python中用于外语的Windows命令行错误,python,mysql,windows,python-idle,Python,Mysql,Windows,Python Idle,我正在从MySQL数据库下载数据。一些数据是韩文的。在将字符串放入表(Qt)之前尝试打印字符串时,windows命令提示符将返回: File "C:\Python27\lib\encodings\cp437.py", line 12, in encode return codecs.charmap_encode(input,errors,encoding_map) UnicodeEncodeError: 'charmap' codec can't encode characters in

我正在从MySQL数据库下载数据。一些数据是韩文的。在将字符串放入表(Qt)之前尝试打印字符串时,windows命令提示符将返回:

File "C:\Python27\lib\encodings\cp437.py", line 12, in encode
    return codecs.charmap_encode(input,errors,encoding_map)
UnicodeEncodeError: 'charmap' codec can't encode characters in position 0-2: character maps to (undefined)
但是,当我使用IDLE运行代码时,它可以很好地打印韩语。当我试着调试为什么我的程序不能工作时,这让我很头疼,因为我只是从文件夹中单击python文件来运行它。最后,当使用idle时,一切正常


我的python安装、windows安装或python代码尝试只打印字符时是否有问题?我假设它不会是python代码,因为它在空闲状态下工作。另外,在windows中使用特殊功能打印似乎很糟糕,因为它限制了代码到另一个操作系统的可移植性(或者每个操作系统都会有这个问题吗?

IDLE基于tkinter,tkinter基于tcl/tk,tcl/tk支持整个基本多语言平面(BMP)。(但tcl/tk不支持带有其他字符的补充平面)。在Windows上,Python交互式解释器在命令提示符使用的同一控制台窗口中运行。这仅支持BMP的代码页子集,有时仅支持256个2^^16字符


支持ASCII和韩语的代码页是949。在命令提示符下,
chcp 949
应更改为该代码页。如果启动Python,您应该能够显示韩文字符。

连接到数据库时是否尝试使用不同的编解码器,如utf-8或utf-16?我使用charset='utf8',当我将字符串放入表中时,它会很好地插入,因此我假设它使用utf-8,但仅在打印时如何转换Python中的字符串?不幸的是,UTF-8在windows中不受支持。也许它会有用:[