ユーザーがコマンドラインでプログラムを操作するPythonでプログラムを書いています。ユーザーからコマンドを取得するために raw_input を使用しています。bashなどのように「メモリ」が欲しいので、キーボードの矢印(上または下)を押すと、前/次のコマンドが取得されます。私はそれを行う1つの方法を知っています(単にユーザーが入力したすべての文字を取得してチェックするだけです)が、もっと良い/かわいい方法を知っているかもしれません:-)
挨拶
ユーザーがコマンドラインでプログラムを操作するPythonでプログラムを書いています。ユーザーからコマンドを取得するために raw_input を使用しています。bashなどのように「メモリ」が欲しいので、キーボードの矢印(上または下)を押すと、前/次のコマンドが取得されます。私はそれを行う1つの方法を知っています(単にユーザーが入力したすべての文字を取得してチェックするだけです)が、もっと良い/かわいい方法を知っているかもしれません:-)
挨拶
あなたが何を望んでいるのか理解できれば、readline
モジュールをインポートするだけでそれを実現できます。これにより、 の動作が変更raw_input()
され、履歴と行編集に関して Python インタラクティブ シェルのように動作するようになります。
ただし、Python をビルドしなくてもビルドできるreadline
ので、try ブロック内にインポートすることをお勧めします。
try:
import readline
except:
pass #readline not available
組み込みのreadline モジュールがこの機能を提供します。