尽管 Python 3.8 也应该在 Windows 上使用 UTF-8 ( PEP-0528 PEP-0529 ),但仍然可以
UnicodeEncodeError: 'charmap' codec can't encode character '\u251c' in position 0: character maps to <undefined>
异常发生在cp1252.py
.
示例代码(t.py
):
print(b'\xe2\x94\x9c'.decode('utf-8'))
print(b'\xe2\x94\x94'.decode('utf-8'))
print(b'\xe2\x94\x80'.decode('utf-8'))
print(b'\xe2\x94\x82'.decode('utf-8'))
不会发生python t.py
,但在管道时会发生
python t.py | python -c "import sys; print(sys.stdin.read())"
或转发到文件 ( python t.py > t.txt
)。