Проблема IntelliJ IDEA: исключение xarray и pyparsing при импорте

Это как-то связано с IDE IntelliJ IDEA 2017.1.1. При выполнении кода через командную строку у меня не возникает следующей проблемы.

===========================================================================

Python version: 3.6.1
xarray version: 0.9.6
pandas version: 0.20.3
numpy version: 1.12.1

Я впервые хочу использовать xarray.

Я импортировал модуль (здесь нет проблем), а затем, даже не используя модуль, запустил свой код. Например:

import xarray as xr

def something():
    print("doing something...")

something()

Это немедленно вызывает исключение, когда я его запускаю:

Исключение игнорируется в: 0x05A287B0> Traceback (последний вызов последним): файл «C: \ Program Files (x86) \ Python36-32 \ lib \ site-packages \ pyparsing.py», строка 160, в _generatorType = type (( y for y in range (1))) SystemError: возврат ошибки без набора исключений

Если я удалю import xarray as xr и перезапущу код, я не получу исключения. Судя по сообщению об исключении, это выглядит как что-то под названием pyparsing.py

Любые идеи?


person pookie    schedule 05.09.2017    source источник


Ответы (1)


pyparsing, вероятно, установлен как зависимость от другого пакета. Я провел модульные тесты pyparsing как на Python 3.6.1, так и на 3.6.2 (а также на большинстве других популярных версий Python до 2.6) без каких-либо ошибок.

Я подозреваю, что что-то в вашей среде определяет range как нечто иное, чем обычный встроенный range метод, и это приводит к сбою кода pyparsing.

Я исправлю это в pyparsing, чтобы заменить range(1) только пустым списком, который должен дать те же результаты для pyparsing, но без возможности перезаписи monkeypatch на range.

А пока попробуйте явно импортировать pyparsing перед импортом xarray или чего-нибудь еще в этом отношении. Подойдет простой import pyparsing.

person PaulMcG    schedule 05.09.2017
comment
Спасибо, попробую утром и дам знать. - person pookie; 06.09.2017