ブラウザならではの欠点
ブラウザだけでPythonを動かせる『PyWeb』は、手軽で便利なサービスです。しかし、その便利さの裏には一つの欠点がありました。それは、PCモードでinput命令が正しく動作しなかったことです。
『なぜそんな基本的な命令が動かないの?』と疑問に思う方も多いでしょう。実は、ブラウザ上でPythonや他のプログラミング言語を動かす際には、共通した問題なのです。
しかし、この悩ましい問題にも解決の兆しが見えてきました。ついに、PyWebではinput命令や標準入力(STDIN)が正常に動作するようになったのです!
INPUT命令
INPUT命令を実行すると入力用のパネルが開きます。こちらに内容を入力します。
今までは、input命令実行前にprint命令などで、表示を行っても表示されませんでした(プログラムが終了すると表示される・・・)。現在は、ご覧のように1行目に記述したprint命令が表示(“START”)されます。
INPUT命令・複数行
複数回のINPUT命令に対して、まとめて入力できます。入力内容をメモ帳などに記述し、それをコピー&ペーストで貼り付けます。入力エリアは画面右下をドラッグすると大きくできます。
sys.stdin.readline命令
INPUTコマンド以外にも、入力を受け取る方法としてSTDIN命令があります。その中で、sys.stdin.readline()は1行の入力を読み取るための命令です。
こちらも複数行入力できますが、INPUT命令と違い直接入力可能です。
sys.stdin.read命令
sys.stdin.read()は複数行を読み取る命令です。
こちらも複数行を直接入力できます。入力を終了させるには、「Ctrl+D」ボタンを押します。