не может редактировать строку в командной строке python в Linux
Я запускаю Python CLI под Linux:
bla:visualization> python Python 2.1.1 (#18, Nov 1 2001, 11:15:13) [GCC egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)] on linux2 Type "copyright", "credits" or "license" for more information. >>>
По какой-то причине клавиши со стрелками и клавиша удаления не работают:
Удалить:
>>> x^H^H^H
стрелка вверх:
>>> x^[[A^[[A
и т.д…
Как я могу сделать эти работы?
- Есть ли более pythonic способ открыть файл, если он указан как аргумент или stdin, если нет?
- Python обрабатывает несколько файлов итеративно, без явного цикла
- Выполнение командной строки в другой папке
- Bash: переменная в одиночной кавычке
- Интерактивное построение с помощью Python через командную строку
Основная проблема заключается в том, что ваша установка Python, скорее всего, не была скомпилирована с помощью библиотеки readline
. Вы можете подтвердить это, пытаясь импортировать модуль readline
:
import readline
Вы должны получить сообщение об ошибке при импорте, если readline
отсутствует.
Если это так, вы не можете сделать ничего, кроме как перекомпилировать Python с библиотекой readline
, если сможете.
Установите iPython ( http://ipython.scipy.org/, но его можно установить с помощью easy_install или pip), он намного лучше, чем CLI по умолчанию.
Попробуйте установить терминал из оболочки с помощью stty
. Обратите особое внимание на erase
и kill
специальных символов. Для вашей установки Python исполнилось 8 лет, подумайте над обновлением до более новой версии.
Мне пришлось установить readline-devel, чтобы заставить это работать:
yum install readline-devel
Теперь моя клавиатура python редактирует нажатия клавиш.
- выполнение скрипта python из php под окнами
- ImportError: нет модуля с именем gdal
- Почему я не получаю сообщения журнала INFO в python?
- Нужен лучший способ выполнения команд консоли из python и регистрации результатов
- Как принять строку, начинающуюся с # в python?
- запустить скрипт python в терминале без команды python
- Аргументы командной строки Python (Windows)
- Ошибка при использовании функции offlineimap: getfolder () запрашивает несуществующую папку
- Могу ли я передать «\ t» на python из командной строки?