the opy book
Thu Oct 17 19:13:50 JST 2019 (modified: Mon Oct 21 09:09:54 JST 2019)
views: 1471, keywords: この記事は最終更新日が5年以上前のものです。
5. モジュールの利用
opyではPythonのモジュールを利用できます。モジュールの読み込み方は3通りあります。まず、リストアクションの中では、自動的にモジュールが読み込まれます。
### sin 1を求める ###
$ opy 'B:[math.sin(1)]'
0.8414709848078965
### sqrt(3*3 + 4*4)の計算 ###
$ opy 'B:[numpy.hypot(3,4)]'
5.0
ただし、これは「PythonがNameErrorを起こしたときにモジュールの読み込みを試みる」という愚直な実装で実現されています。ですので、リストの中で副作用のある計算をすると、モジュールを読み込む前にリストの中で行った計算が2度実行される可能性があります。
もう一つは明示的にインポートする方法で、-m
(モジュール)オプションを使う方法が簡単です。
### -m オプション ###
$ opy -m numpy 'E:{print(numpy.pi)}'
3.141592653589793
### 二つ以上指定する時はカンマで ###
$ opy -m math,numpy 'B:[math.e,numpy.e]'
2.718281828459045 2.718281828459045
最後の方法はBEGINパターンを使うものです。
$ opy 'B:{import numpy};E:{print(numpy.pi)}'
3.141592653589793
$ opy 'B:{import numpy as np};E:{print(np.pi)}'
3.141592653589793