2.1. 最初のスクリプト¶
Pythonのスクリプトは、.py 拡張子のテキストファイルに保存された一連の命令です。緑色の Run ボタンを押すと、OpenMV Camはその時点でIDEで開かれているスクリプトを実行し、出力をウィンドウ下部のIDEのシリアルターミナルに表示します。
もっとも単純なスクリプトは1行だけです:
print("Hello, OpenMV!")
Run を押すとこのスクリプトがカメラに送られ、カメラがそれを実行してメッセージをIDEに返して表示します。
2.1.1. print の動作¶
print() は組み込み関数です。ファームウェアの内部に存在し、特別な設定なしにいつでも利用できるコードです。括弧の中に1つ以上の値を渡すと、それらの値のテキスト表現をIDEに出力します。
print() にはテキスト以外のものも渡せます:
print(42)
print(3.14)
print("temperature", 25)
複数の引数は出力時にスペースで区切られます:
>>> temperature 25
2.1.3. インデントが重要¶
Pythonは行頭の空白であるインデントを使って、関連する行をグループ化します。関数、if 文、ループの内部では、そのブロックに属するすべての行を 同じ量 だけインデントします(スペース4つが慣例です)。タブとスペースを混在させたり、ブロック内でインデント幅を変えたりすると構文エラーになります。
上記の print 呼び出しのようなトップレベルの文は、インデント0の位置にあります。インデントされたブロックは、分岐やループを書き始めると現れます。
Tip
: で終わる行を書き終えると、IDEが自動的にインデントしてくれます。原因不明の IndentationError が出た場合は、該当するブロックを選択して Tab / Shift+Tab を押し、整列し直してください。
2.1.4. スクリプトを再実行する¶
Run を押すたびに、カメラは実行中の処理を停止し、現在のスクリプトを読み込んで先頭から開始します。別途コンパイルする手順はありません。1行変更してもう一度 Run を押せば、新しい出力がターミナルに表示されます。
カメラの電源が入るたびに自動的にスクリプトを実行させるには、カメラのファイルシステムに main.py という名前で保存します。
2.1.2. コメント¶
#はコメントの始まりで、その行の残りの部分はPythonに無視されます。コメントはコードがなぜそのように動作するのかを説明するために使いましょう。コードが何をしているのかはコード自体がすでに示しています。Pythonには複数行コメント専用の構文はありません。複数の行を個別にコメントするか、IDEで対象の行を選択して
Ctrl+/を押すとコメントのオン・オフを切り替えられます。