組み込みのPythonモジュールを編集できますか?


10

私は現在Pythonを学習しており、数学ライブラリの使用についての本の途中です。PythonのWebサイトを調べたところ、ライブラリが少々不足していて、さらに便利な関数をいくつか作成していることがわかりました。たとえば、先に進んで、係数を取得して方程式の根を返す関数を作成しました。本質的には二次式関数です。これをpython Mathライブラリに追加できるかどうか疑問に思っています。そうでない場合は、関数を呼び出すだけで作成した他のPythonプログラムでその関数を使用できるように、どのように保存しますか?


1
細かい点をカバーするMichael0x2aによる以下回答がありますが、シンプルなバージョンはそれをしないでください:私があなたのコードを読んでいmath.polynomial_roots()て、私への電話を見て、私の通訳が混乱するでしょう。それは悪いことです。
msw

回答:


10

mathモジュールは組み込みなので、Pythonインタープリター自体を変更するのではなく、変更することはできないと思います。しかし、モジュールを書くことは間違いなくあなたにできることです。

次のようにファイルを構成すると、

somefolder
    mymath.py
    myprogram.py

...単にimport mymath内部myprogram.pyで実行し、mymath.py通常どおり関数やクラスを内部で使用できます。

したがって、mymath.py次のような場合:

def quadratic(a, b, c):
    # blah blah blah

あなたは内部で以下を行うことができます myprogram.py

import mymath

print mymath.quadratic(1, 2, 3)

作成したモジュールを任意のプログラムで使用できるようにする場合は、モジュールをコピーして、作業しているプロジェクトのフォルダーに貼り付けるか、PATHに追加します。(たとえば、私のコンピューターにmymath.pyあるsite-packagesフォルダー内に含めることができC:\Python27\Lib\site-packagesます)。これを行うと、import mymath何もコピーアンドペーストする必要がなくなります。

補足として、numpyには、非常に包括的な数学および科学関連の関数のセットがあり、これらを確認できます。これは、Pythonでの数値計算の事実上の標準であるafaikです。


1
まさに私が書いた答え。Pythonは、文字通り、改造するように設計されています。
joshin4colours 2012
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.