#python #linux
#python #linux
Вопрос:
Я попробовал следующий код в python3 как с ОС Windows, так и с ОС Linux, но я получил разные результаты. Мне интересно, как разделить строку на список символов вместо байтов Юникода.
код:
#encoding=utf-8
s = '我也不知道lll'
chars = list(s)
for char in chars:
print(char)
linux env: python3.6 gcc4.4
windows env: python3.7
вывод Linux:
Traceback (most recent call last):
File "test.py", line 8, in <module>
print(char)
UnicodeEncodeError: 'latin-1' codec can't encode character 'u6211' in position 0: ordinal not in range(256)
вывод Windows:
我
也
不
知
道
l
l
l
Ответ №1:
Попробуйте использовать
import sys
sys.setdefaultencoding('UTF8')
Это явно установит вашу систему кодирования на UTF-8