Почему элементы понимания списка отличаются от элементов генератора в приглашении Pycharm iPython? - PullRequest
0 голосов
/ 05 июня 2019

При вставке в командную строку iPython следующий код

TFN = [True, False, None]
for q in TFN:
    gen   = (c for c in TFN if c==q)
    lcomp = [c for c in TFN if c==q]
    print list(gen), "\t",list(lcomp)

... создает:

gen     lcomp
[True]  [True]
[False] [False]
[None]  [None]

(напечатанные столбцы элементов не идентичны, как вы могли ожидать).enter image description here

Однако при вставке в приглашение IntelliJ PyCharm iPython это изменяется на:

[None]  [True]
[None]  [False]
[None]  [None]

Воспроизвести:

  • Установите точку останова, как показано ниже:
  • Выберите файл, нажмите кнопку запуска, выберите «Отладка ...»
  • Подождите, пока будет достигнута точка останова
  • Выберите кодкак показано.ALT + SHIFT + E для выполнения.

вы увидите другой вывод во второй раз!

enter image description here

Почему?

1 Ответ

0 голосов
/ 27 июня 2019

Разработчики PyCharm смогли воспроизвести это.Это ошибка в PyCharm:

https://youtrack.jetbrains.com/oauth?state=%2Fissue%2FPY-36512

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