当我在IDLE中键入它时,它可以工作:
>>> print('ã')
ã
但是当我尝试运行代码(python main.py)时,它给了我这个错误:
Traceback (most recent call last):
File "main.py", line 1, in <module>
print('\xe3')
File "C:\Users\Gustavo\AppData\Local\Programs\Python\Python35\lib\encodings\cp437.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\xe3' in position 0: character maps to <undefined>
这里是main.py的代码:
print('ã')
请帮帮我。
答案 0 :(得分:0)
看起来您正在使用美国英语语言环境Windows控制台运行,该控制台使用代码页437对其输出进行编码。代码页437不支持字符ã
。
您可以使用win-unicode-console
等第三方库或切换代码页。代码页1252有效:
C:\>chcp 1252
C:\>python main.py
ã
不幸的是,Windows控制台对UTF-8等编码的支持很差,这些编码支持整个Unicode字符范围,因此最好坚持使用支持UTF-8的IDE。