PyCharm: Py_Initialize: невозможно инициализировать стандартные потоки sys

Я пытаюсь использовать PyCharm IDE, но ни одна из моих программ не компилирует даже простой Hello World. PyCharm выдает эту ошибку:

Fatal Python error: Py_Initialize: can't initialize sys standard streams
Traceback (most recent call last):
  File "C:\Python34\lib\io.py", line 72, in <module>
AttributeError: 'module' object has no attribute 'ABCMeta'
Process finished with exit code 3

Я не могу найти решение для этого, а также сослался на ссылку PyDev: Неустранимая ошибка Python32 \ lib \ io.py, строка 60, в ‹module›, но там нет решения.

Python 3.4 установлен в моей ОС Win 7.


person Community    schedule 26.10.2014    source источник
comment
Измените имя файла с io.py на другое.   -  person Burhan Khalid    schedule 26.10.2014
comment
Я решил свою проблему. Очевидно, PyCharm не может выполнить файл с именем abc.py, потому что в Python есть встроенный модуль abc. Запуск abc.py через командную строку работает. Проверьте, называется ли ваш файл abc.py, если это так, переименуйте его в другое имя.   -  person iridescent    schedule 26.10.2014
comment
@BurhanKhalid, можете ли вы подробнее объяснить, почему это проблема и как ее избежать? Я не могу найти список зарезервированных имен файлов или что-то подобное.   -  person Dusan Vasiljevic    schedule 29.10.2019
comment
У меня была аналогичная проблема. Раньше я называл свой пакет io   -  person lab bhattacharjee    schedule 28.12.2019


Ответы (6)


Я столкнулся с той же проблемой, потому что я создал файл с именем abc.py, удалите этот файл в своем проекте, ваша ошибка исчезнет.

person vinay    schedule 30.11.2016
comment
почему имя файла abc.py не поддерживается в pycharm? - person HarshitMadhav; 16.03.2018
comment
Если вы назовете свой файл abc.py, вы затените abc (абстрактный базовый класс ). Когда вы это сделаете, все, что зависит от встроенного abc, получит вместо этого ваше. Если вы существенно не переписываете код стандартной библиотеки, что-то сломается. - person Ernst; 28.06.2018
comment
Повторение @ david-c, изменение имени модуля может работать, но в этом нет необходимости. Снятие отметок с нескольких полей в конфигурациях Run / Debug - лучшее решение. - person Keith Ma; 28.03.2020

Да, как вы сказали в комментарии, проблема в имени файла «abc». Вы сможете запустить этот файл в PyCharm, если снимете флажок:

  • Добавить корни содержимого в PYTHONPATH
  • Добавить исходные корни в PYTHONPATH

в меню «Запуск / отладка конфигураций».

person Elizaveta Shashkova    schedule 07.08.2015
comment
Это то, что у меня сработало. Я подозреваю, что это должен быть принятый ответ. Не должно быть никаких запрещенных магией имен модулей, таких как abc.py. - person philologon; 25.06.2018
comment
Также стоит убедиться, что опция «рабочий каталог» не указывает на ваш файл или подпакет. - person David C; 06.02.2019

У меня такая же проблема, просто измените имя файла с io.py на другое, это работает!

person janeluck    schedule 19.08.2016
comment
Это просто странно. Мне пришлось переименовать один из моих пакетов, его имя было io, и при отладке (и только тогда) он не работал бы! После перехода на inout все заработало. - person MatBos; 24.07.2018

Наконец нашел, как решить эту проблему в PyCharm: никогда не используйте имя типа abc.py или test.py.

Просто используйте другое имя, например a.py или my-unique-file-name.py

person Deqing    schedule 08.10.2016

попробуйте это: File-> Setting-> Editor-> File Encodings измените кодировку проекта на UTF-8

person 張家豪    schedule 17.06.2015

В моем случае from .my_file import * вызвал ошибку. Изменение на from .my_file import func_1, func_2, func_3 решило эту проблему.

person mmichal10    schedule 11.08.2020