PythonはIoT、機械学習をはじめ、幅広い分野で使われているプログラミング言語になります。JavaScriptと同様に、覚えておくと利用範囲の広いプログラミング言語といえるでしょう。
そんなPythonとNCMBを組み合わせる際に利用できる、Python SDKを開発しています(非公式)。まだまだ機能は少ないですが、徐々にバージョンアップしていきます。
今回はデータストアの検索処理の書き方です。
GitHub - goofmint/ncmb_py: NCMBのPython SDKです
インストール
インストールはpipコマンドで行います。
pip install NCMB
初期化
初期化処理は次のように行います。
from NCMB.Client import NCMB ncmb = NCMB('YOUR_APPLICATION_KEY', 'YOUR_CLIENT_KEY')
検索用クラスのインスタンスを作成
まず ncmb.Query で検索用インスタンスを取得します。Python
は検索対象のクラス名です。
query = ncmb.Query('Python')
条件を適用する
次に条件を適用します。たとえばイコール条件であれば次のように指定します。
query.equal_to('number', 100)
検索を実行する
検索の実行は fetch_all
メソッドになります。結果はNCMBObjectの配列になります。
ary = query.fetch_all()
検索条件について
検索条件はほかにも次のように用意しています。ほかのSDKに寄せていますが、inは予約後なので in_value
にしています。
equal_to(self, key, value): greater_than_or_equal_to(self, key, value): not_equal_to(self, key, value): less_than(self, key, value): less_than_or_equal_to(self, key, value): greater_than(self, key, value): in_value(self, key, values): not_in(self, key, values): exists(self, key, exist = True): regular_expression_to(self, key, regex): in_array(self, key, values): not_in_array(self, key, values): all_in_array(self, key, values):
その他の条件指定
検索条件のほか並び替えや取得件数の指定もできます。
query.limit(1) # 取得件数指定 query.order('updateDate') # 並び替え query.skip(100) # スキップする件数
コードについて
Python SDKはオープンソース・ソフトウェア(MIT License)になります。GitHub - goofmint/ncmb_py: NCMBのPython SDKですにて公開されています。
まとめ
Python SDKを使うことで、IoTや機械学習分野でmBaaSを使いやすくなります。アプリと連携させたり、サーバ間でのデータやり取りなど、幅広くご利用ください。