Pythonコンソール¶
Pythonコンソールとは¶
Pythonコンソール(PythonConsoleView)は、Choreonoid上で対話的にPythonのコードを入力・実行できるビューです。Pythonのコードをその場で実行して、アイテムやモデルの状態を確認・操作することができます。スクリプトを作成する際に、使用するクラスや関数の動作をあらかじめ確認する用途にも便利です。
このビューはメインメニューの「表示」-「ビューの表示」-「Pythonコンソール」で表示できます。
基本的な使い方¶
コンソールにはプロンプト ">>> " が表示され、通常のPythonインタプリタと同様にコードを入力・実行できます。
>>> print("Hello, Choreonoid!")
Hello, Choreonoid!
Choreonoidのモジュールをインポートすることで、Choreonoid上のオブジェクトを操作できます。例えばアイテムツリーに読み込まれているボディアイテムを取得して、その情報を表示するには以下のようにします。
>>> from cnoid.Base import *
>>> from cnoid.BodyPlugin import *
>>> bodyItem = RootItem.instance.findItem(BodyItem)
>>> bodyItem.name
'SR1'
>>> bodyItem.body.numJoints
29
なお、コンソール上で実行したコードの名前空間は、Pythonスクリプトアイテム(独立名前空間プロパティがfalseのもの)と共有されています。スクリプトの実行後にコンソールからスクリプト内の変数を参照して、処理結果を確認するといったことも可能です。
複数行にわたるコードの入力¶
for文や関数定義など複数行にわたるコードを入力する場合は、継続行のプロンプトが "... " に変わります。通常のPythonインタプリタと同様に、ブロックの終わりで空行を入力すると実行されます。
>>> for i in range(3):
... print(i)
...
0
1
2
入力補完¶
コードの入力途中でTabキーを押すと、その位置で入力可能なモジュール名やクラス・関数のメンバ名等が補完されます。候補が複数ある場合は候補の一覧が表示されます。クラスの持つメソッドをその場で確認しながら入力を進めることができます。
コマンド履歴¶
上下の矢印キーで、過去に入力したコマンドを呼び出すことができます。同じコマンドや類似のコマンドを繰り返し実行する際に活用してください。