Pycharm Python интерпретатор неправильно показывает ошибки - PullRequest
0 голосов
/ 09 апреля 2019

Я импортирую файл .py в другой from snow_get import *. Pycharm выдаёт мне неразрешённую ошибку ссылки, но когда я запускаю её, она работает просто отлично. Я получаю эту ошибку как с init .py в моей папке, так и без него.

Я заметил, что версия Python - 3.7 (~ / anaconda3 / bin / python), тогда как интерпретатор проекта - 3.6 (также ~ / anaconda3 / bin / python). Но я не смог это исправить.

Undeservedly unresolved

snow_get.py

import pysnow
from pprint import pprint

def foo():
    print('bar')

snow_post.py

from snow_get import *

foo()

печатает следующее:

/Users/hermanvanderveer/anaconda3/bin/python "/Users/hermanvanderveer/Code/RPA/Python/Coca cola/snow_post.py"
bar

Process finished with exit code 0

Так что все работает просто отлично. Но почему тогда Пихарм дает мне неразрешенную ссылку?

1 Ответ

1 голос
/ 09 апреля 2019

это работает, потому что скрипт выполняется как в консоли:

python -m script.py.

PyCharm, однако, имеет «умное» обнаружение ошибок в соответствии со стандартами. Импорт должен быть выполнен как относительный импорт с помощью '.' запись, потому что это ваш сценарий.

Также вы можете изменить маркировку всех этих ошибок в Настройках -> Редактор -> Проверки

Обновление:

мой хак это:

try:
    from .data_processing import DataProcessor
except ImportError as e:
    from data_processing import DataProcessor

Я поставил обе версии для запуска кода и загрузки библиотеки. Это только для локальных модулей и пакетов.

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