01
22
38
44
为了账号安全,请及时绑定邮箱和手机立即绑定

Python:使用 exec() 从其他文件导入列表

Python:使用 exec() 从其他文件导入列表

不负相思意 2024-01-15 17:03:10
我正在尝试从 python 中的文件导入列表,但我不知道列表或文件的名称。我在代码中询问它们,当我得到它们时,我试图导入列表,def listIMP(ITEM):    listIMP = "from {0} import {1}".format(ITEM[0],', '.join(str(i) for i in ITEM[1:])) # generating command    exec(listIMP) #exec generated command我称之为:listN = input('!\n')# asking for list namename = input('>') # asking for file namename = name[:-3] #deleting .pylist1 = [name, listN] listIMP(list1) # calling my func但我无法获得 exec 的输出,这是我的列表,我知道我可以将其作为字符串获取,但我想将其作为列表获取,这可能吗?

1 回答

?
狐的传说

TA贡献1804条经验 获得超3个赞

尝试import_module()使用getattr()

from importlib import import_module


def import_from(module, variable):

    return getattr(import_module(module), variable)


print(import_from('module_name', 'variable_name'))

exec()并不完全适合您想要实现的目标。在这里使用它会给你带来不必要的头痛。


替换__import__()import_module(). 不鼓励使用前者。


查看完整回答
反对 回复 2024-01-15

添加回答

代码语言

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号