UTF-8 не работает с кириллицей в Pycharm - PullRequest
0 голосов
/ 06 апреля 2019

Хорошо работает, если я что-то делаю в программе, но не работает, когда я читаю файл.

with open('test.txt', 'r') as f:

    print(f.read())

Ввод (text.txt):

слово
строка

Выход:

слово
строка

Я установил глобальную кодировку и кодировку проекта на UTF-8. Нет результата.

1 Ответ

0 голосов
/ 08 апреля 2019

Файл закодирован в UTF-8, но по умолчанию используется язык cp1251. Будьте явными и всегда открывайте файл с его известной кодировкой:

#!python3
with open('test.txt', encoding='utf8') as f:
    print(f.read())

Пользователи Python 2 должны использовать модуль io. Встроенный open Python 2 не поддерживает параметр encoding. io.open является реализацией Python 3 и доступен в Python 2 и Python 3 для переносимости.

Этот код совместим с Python 2 и 3:

from __future__ import print_function # for Python 3 print syntax in Python 2.
import io
with io.open('test.txt', encoding='utf8') as f:
    print(f.read())

Ссылка: открыто

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...