Редактор PyCharm и нерешенная ссылка на консоль Python - PullRequest
2 голосов
/ 20 мая 2019

Если в моем проекте есть модуль с правильно настроенными начальными элементами, и я пытаюсь импортировать что-либо из этого модуля, PyCharm не определяет, что я пытаюсь импортировать. Это работало раньше, но почему-то перестало работать, и я понятия не имею, почему.

Пример:

. / Пакет / file.py

def function():
    print('function')

. / Пакет / __ __ INIT. Ру

from .file import function

. / Call.py

from package import function

function()

Код выполняется нормально, но я не могу использовать автозаполнение, и редактор сообщает об ошибке «Неразрешенная ссылка« функция »» в файле ./call.py

Способы, которые я пробовал, не работали:

  • Недействительные кэши / перезапуск
  • Используйте другой переводчик (но все еще используя conda)
  • CTRL + Пробел не показывает ничего, что мне нужно
  • Вкладка не показывает ничего, что мне нужно
  • Перезапустить PyCharm

EDIT0: Если я использую import package, автозаполнение работает нормально, отображая функции (package.function), которые можно использовать в консоли Python, но все равно не работает в редакторе.

EDIT1: Я попытался пометить каталог как Source Root, и он не работал

EDIT2: Попытался удалить из оснастки и снова установить все это после удаления всех файлов из /home/usr/.PyCharm*, и он работает нормально.

1 Ответ

1 голос
/ 21 мая 2019

Вам необходимо пометить каталог верхнего уровня как Source Root.

Щелкните правой кнопкой мыши на нем, а внизу есть опция Mark Directory as и выберите Sources Root. Он станет синим.

Тогда вы можете импортировать:

from package import function
function()

OR

import package
package.function()

Подробнее на здесь .

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