Как я могу добавить команду в интерактивную оболочку Python?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как я могу добавить команду в интерактивную оболочку Python?

Сообщение Anonymous »

Я пытаюсь сохранить себя всего лишь несколько клавишных для команды, которую я набираю довольно регулярно в Python. нагрузка, которая похожа на импорт, но добавляет некоторую функциональность. Требуется одна строка: < /p>

def load(s):
# Do some stuff
return something
< /code>

Чтобы вызвать эту функцию, я должен ввести < /p>

>>> load('something')
< /code>

Я бы предпочел просто вводить: < /p>

>>> load something
< /code>

Я запускаю Python с поддержкой READLINE, поэтому я знаю, что там существует некоторая программируемость, но я не знаю, возможно ли это с использованием. < /< / / p>

Я попытался обойти это, используя InteractivConsole < /code> и создав экземпляр в моем файле запуска, например, так: < /p>
< Br />import code, re, traceback

class LoadingInteractiveConsole(code.InteractiveConsole):
def raw_input(self, prompt = ""):
s = raw_input(prompt)
match = re.match('^load\s+(.+)', s)
if match:
module = match.group(1)
try:
load(module)
print "Loaded " + module
except ImportError:
traceback.print_exc()
return ''
else:
return s

console = LoadingInteractiveConsole()
console.interact("")
< /code>

Это работает с предостережением, которое я должен дважды нажать Ctrl-D, чтобы выйти из интерпретатора Python: один раз, чтобы выйти из моей пользовательской консоли, один раз, чтобы выйти из Реальный. edit < /h2>

вне канала, у меня было предложение добавить это до конца моего файла запуска: < /p>

import sys
sys.exit()
< /code>

он работает достаточно хорошо, но я все еще заинтересован в альтернативных решениях. < /p>

Подробнее здесь: https://stackoverflow.com/questions/401 ... tive-shell
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»