打印卡适合python 3中的符号

时间:2016-11-08 21:34:24

标签: python ascii python-3.5

# -*- coding: utf-8 -*-
import sys
from io import TextIOWrapper
sys.stdout = TextIOWrapper(sys.stdout.buffer, encoding='UTF-8', errors='replace')

print('♥')

我在Windows控制台中打印套装符号时遇到问题我在互联网上搜索了2天但没有找到如何使控制台能够打印这些符号的方法。它似乎适用于任何其他平台,如Linux ......我尝试了上面提供的解决方案来导入一些模块并更改系统的编码。它工作但是2小时后控制台开始打印拉丁字符,例如ē没有任何意义 我真的需要帮助,我必须在下周五的下一天之前做到这一点

1 个答案:

答案 0 :(得分:0)

1 )设置PYTHONIOENCODING系统变量:

 set "PYTHONIOENCODING=UTF-8"

2 Change the active console Code Page to UTF-8

脚本(请注意,所有sys.stdout = …内容都已注释掉):

# -*- coding: utf-8 -*-
# import sys
# from io import TextIOWrapper
# sys.stdout = TextIOWrapper(sys.stdout.buffer, encoding='UTF-8', errors='replace')

print('♥')

输出Copy&Paste来自打开的cmd窗口):

==> set pyth
PYTHONIOENCODING=UTF-8

==> chcp
Active code page: 852

==> D:\test\Python\40496821.py
ÔÖą

==> chcp 437
Active code page: 437

==> D:\test\Python\40496821.py
ΓÖÑ

==> chcp 65001
Active code page: 65001

==> D:\test\Python\40496821.py
♥

==>