gpt4 book ai didi

python - 使用字符串指定 `from my_package import my_class as my_custom_name`

转载 作者:行者123 更新时间:2023-12-03 02:44:40 25 4
gpt4 key购买 nike

我想让下面的行变得动态:

from my_package import my_class as my_custom_name

我知道如何通过字符串动态导入模块

import importlib
module_name = "my_package"
my_module = importlib.import_module(module_name)

按照建议here 。但是,它仍然不允许我指定要导入的类 (my_class) 以及要分配给类名的别名 (my_custom_name)。我正在使用 python 3.6

最佳答案

两步。第一,您可以使用 importlib 直接引用模块:

importlib.import_module('my_package.my_module') # You can use '.'.join((my_package, my_module))

您的类将作为属性包含在模块本身中,就像在任何导入中一样。因此,只需使用

my_custom_name = importlib.import_module('my_package.my_module').__dict__['my_class']

甚至更好

my_custom_name  = getattr(importlib.import_module('my_package.my_module'), 'my_class')

关于python - 使用字符串指定 `from my_package import my_class as my_custom_name`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60830734/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com