[英]Import Class from a python package at runtime
我正在嘗試編寫一個將class
名作為參數並導入該類並執行某些任務的函數。
def search(**kwargs):
"""
:return:
"""
try:
model = __import__('girvi.models', globals(), locals(), kwargs['model_name'], -1)
# Do some task
return results
except Exception:
raise Exception('Model not found')
但是事情是model
已經成功導入了kwargs['model_name']
的類,但是我該如何訪問它。 請有人幫我。
我會嘗試以下方法:
import importlib
import sys
def import_class(class_name, module_name = "girvi.models"):
module = importlib.import_module(module_name)
class_object = getattr(module, class_name) # does not work for nested classes
return class_object
根據__import__
說法,應該寧願使用importlib.import_module
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.