私はPythonを初めて使いました。カスタムクラス内に外部モジュールやパッケージをインポートするのに苦労しています。 私は答えを見つけられませんでした。おそらく私が使った言葉は良いものではないからです。これは、基本的にはPythonのグローバルな理解を扱う初心者質問ですPythonカスタムクラスで外部ライブラリをインポートする方法
私は以下のクラスをしました:名「XL」はありませんdefined`です:私はこのクラス構造でインスタンスを作成する場合NameError私は `だ
class MyCustomClass:
import openpyxl as xl
from fuzzywuzzy import fuzz
from fuzzywuzzy import process
import time
def __init__(self, file_path):
self.file = xl.load_workbook(file_path)
def some_method(self):
start = time.time()
process.extractOne(#calling args)
`
self.xl
とself.timeを使用すると機能しました。 私の質問は次のとおりです。
1)クラス内のモジュールをインポートするにはどうすればよいですか?
2)インスタンス変数を避けることはできますか?あなたのクラス定義の外の前にFIEの一番上にそれらをインポートしないのはなぜあなたの助けを
おかげで、
私は、これはopenpyxlではなく、時間を働く理由について全くわからないが、私はちょうどそれがに珍しいことではありませんことを追加したいと思います独自のモジュールとしてカスタムクラスを用意しておき、メインスクリプトで 'from(filename)import MyCustomClass'を呼び出すようにしてください。これにより、インポートの範囲が制限されるので、オブジェクトのコンストラクタになることを要求せずに名前空間を気にする必要はありません – Aaron