「いつでもどこでもPythonを使っていたい」という人が世界中にたくさんいる。筆者もその一人なのだが、電車や飛行機の中でプログラムを作りたいという場合には、ノートパソコンを持ち歩くしかなかった。しかし、時代は変わった。今やiPhone/iPadでも気軽にPython開発ができるようになったのだ。今回は、Pythonistaというアプリを使って、いつでもどこでもPythonを使う方法を紹介しよう。

iOSでPythonを使うには?

iPhone/iPad(iOS)でPythonを使いたいと思ったときには、いくつかの選択肢がある。まず、今回紹介する有料アプリのPythonista、無料アプリのPython3 IDEなどを使う方法一つ。他には、VNCやSSHなどのアプリを利用して遠隔地のパソコンに接続して、遠隔地のパソコンでPythonを実行する方法がある。

もちろん、遠隔地のパソコンに接続する方法であれば、いつものPython開発環境をスマートフォンでも操作できるのが良い。しかし、インターネット越しに作業をするので、出先で利用する場合、常にモバイル通信を使うことになる。そのため、前者のiOSのアプリを使う方法であれば、自分の持っている端末内ですべてを完結できる。この場合、インターネットの接続がない場所、電車や飛行機の中でも気軽にPythonが楽しめる。

なお、iOSのApp Storeには、いくつかPythonを動かす事のできるアプリが存在する。そこで、そうしたアプリをいくつか試してみたが、有料(2019年11月時点で1220円)であるものの、Pythonistaが最も安定している。有料なので少しハードルが高いのだが、Pythonをどこでも使いたい、またはPython製のアプリをiPhone/iPadでも使いたいというユーザーであれば損はしないだろう。そこで、本稿では、Pythonistaについて紹介しよう。

  • Pythonistaは有料だが便利機能がたくさんついている

    Pythonistaは有料だが便利機能がたくさんついている

Pythonistaについて

Pythonistaが素晴らしい点をいくつか見てみよう。Pythonistaには、Pythonの実行環境だけではなく、使いやすい開発用エディタが含まれている。エディタにプログラムを書いて、実行ボタン一発で、Pythonを実行できるのが良い。さらに、iOSに特化したさまざまな機能を含んでいる。グラフを描画したり、GUIツールを作ることもできる。つまり、iOSでPythonを動くようにしただけでなく、iOSに特化した様々な機能が利用できるようになっている点が評価できる。iPhoneやiPadの機能を利用した便利ツールが作れる。

  • Pythonistaを使うとUIを持つプログラムが作れる

    Pythonistaを使うとUIを持つプログラムが作れる

GUIエディタも用意されており、画面に部品を配置して、画面設計を行うこともできる。プログラムを他人に使ってもらうことを考えたら、GUIで画面を操作できるのは便利なので、これは嬉しい機能だ。

  • GUIエディタもあり画面設計も楽々

    GUIエディタもあり画面設計も楽々

筆者が特に気に入ったのが、グラフを手軽に描画できる点だ。もともと、Pythonにはmatplotlibという優秀なグラフ描画ライブラリがあるが、Pythonistaこれを何の設定をすることなく、そのまま使うことができる。

  • Pythonistaを使うとグラフなどを手軽に描画できる

    Pythonistaを使うとグラフなどを手軽に描画できる

そして、プログラムを記述するエディタの出来がとても良い。最初の数文字をタイプすると画面下部に入力候補が表示される。ネットが使えず正確な綴りを忘れてしまった関数などを入力したい時に、候補から選択することができるが便利だ。

  • Pythonistaはエディタが秀逸、入力補完機能もある

    Pythonistaはエディタが秀逸、入力補完機能もある

Pythonistaでプログラムを作ろう

それでは、実際にプログラムを作ってみよう。既にPythonが使える人であれば、とくに悩むことなくプログラムを始めることができる。Pythonistaを開いて、画面左下にある[+]ボタンを押すと、何を作るのか尋ねられるので、[Empty Script]を選択しよう。そして、「hello」などとファイル名を入力して、右上の[Create]ボタンをタップしよう。すると、白紙のプログラム編集画面が出る。

そこで、プログラムを書いて、右上の実行ボタンを押せばプログラムが実行される。

print("Hello, Python")

実行した後、画面上部の分割ボタンを押すと、左側にエディタ、右側に実行画面と、画面を分けて開発することができる。

  • プログラムを実行したところ。左右に画面を分けて開発できる

    プログラムを実行したところ。左右に画面を分けて開発できる

StaShでPythonistaを拡張しよう

また、StaShというシェルを導入することで、Pythonistaの機能を大幅に拡張できる。StaSHを導入することで、バージョン管理システムのGitを使って、GitHubから任意のプロジェクトをインストールしたり、pipコマンドを利用して外部ライブラリをインストールしたりできる。(ただし、pipを使う場合には動くものと動かないものがある。)

ShaShを導入するには、Pythonistaのコンソールに以下のコマンドを入力して実行する。コンソールを表示するには、画面の右端から左側へスワイプし、画面下部(ソフトウェアキーボードのすぐ上)にある「>」に次のコマンドを入力する。

import requests as r; exec(r.get('https://bit.ly/get-stash').text)

コマンドが実行されたら、Pythonistaを再起動する。すると、「This iPhone」または「This iPad」の中に「launch_stash.py」というファイルが作成されているので、これを実行するとStaShを起動できる。 「help」とタイプするか[Tab]キーを押すと、利用可能なコマンドの一覧が表示される。pingコマンドも使えるので、ちょっとした通信確認にも使える。

  • ShaShを使うと様々なコマンドが利用可能になり外部と連携できる)

    ShaShを使うと様々なコマンドが利用可能になり外部と連携できる)

まとめ

以上、今回は、iPhone/iPadをPython開発マシンに変身させる、Pythonistaを紹介した。これまで作成した便利ツールをiOS上で実行できるだけでも便利だが、Pythonistaに用意されている独自機能を利用してiPhone/iPad専用のツールやゲームを作るのも一興だ。Pythonistaで、Python活用の幅が広がるので試してみよう。

自由型プログラマー。くじらはんどにて、プログラミングの楽しさを伝える活動をしている。代表作に、日本語プログラミング言語「なでしこ」 、テキスト音楽「サクラ」など。2001年オンラインソフト大賞入賞、2004年度未踏ユース スーパークリエータ認定、2010年 OSS貢献者章受賞。技術書も多く執筆している。