История команд Python pdb не работает в Windows

Я использую Windows 7 + Cygwin + Python 2.6 + приглашение cmd. Со вчерашнего дня история командной строки перестала работать с pdb. Я использовал следующие строки в своем коде Python для интерактивной отладки.

import pdb
pdb.set_trace()

Раньше я мог вспомнить историю команд с помощью стрелки вверх, но недавно она перестала работать. Я помню, как добавил несколько пакетов cygwin примерно в то время, когда он перестал работать. Если есть какой-то простой/очевидный способ найти причину ошибки, пожалуйста, сообщите, иначе я попробую откатить все, что я установил.


person user    schedule 14.06.2011    source источник
comment
Вы на самом деле используете приглашение cmd? Или скорее баш?   -  person ThomasH    schedule 14.06.2011
comment
Используете ли вы Python от Cygwin или родную установку Python для Windows?   -  person ThomasH    schedule 15.06.2011
comment
родная установка Windows Python   -  person user    schedule 15.06.2011
comment
Тогда действительно очень странно, почему на это должны влиять изменения в установке Cygwin, они должны быть совершенно не связаны. Вы добавили папку bin Cygwin в настройку cmd% PATH%?   -  person ThomasH    schedule 16.06.2011
comment
Спасибо за помощь. Да, python.exe и cygwin/bin всегда были в настройках PATH. Ничего не изменилось.   -  person user    schedule 16.06.2011
comment
Да, но это означает, что изменения в вашей среде Cygwin могут проникнуть в выполнение Python. Удалите cygwin/bin из PATH в оболочке cmd, затем запустите Python/pdb, посмотрите, изменит ли это что-то. Также проверьте, есть ли у вас настройки среды, такие как PYTHON_PATH, указывающие на cygwin/ в вашем cmd.   -  person ThomasH    schedule 16.06.2011


Ответы (3)


После установки пакета pyreadline я смог использовать клавиши со стрелками вверх/вниз для просмотра истории команд. readline не устанавливается в Windows с помощью pip, но pyreadline кажется ему эквивалентным.

person user2233706    schedule 21.06.2015

Проверьте пакет readline и его совместимость с вашей версией pdb. Возможно, вам нужно понизить рейтинг.

РЕДАКТИРОВАТЬ:

Поскольку вы говорили о недавно установленных пакетах в Cygwin, я предполагал, что вы используете Cygwin Python. Отсюда моя ссылка на пакет readline от Cygwin, так как он может повлиять на существующую установку Python.

person ThomasH    schedule 14.06.2011
comment
У меня не было readline в Windows. История работает с интерактивной оболочкой Python, но не с pdb - person user; 15.06.2011

Переустановка python исправила.

person user    schedule 19.06.2011
comment
У меня такая же проблема, и я поднял вопрос по этому поводу, stackoverflow.com/questions/48764584/ Затем я наткнулся на ваш пост и попробовал ваше решение, но, к сожалению, это не так решить мою проблему - person robbie70; 13.02.2018