我正在嘗試從 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()
.?不鼓勵使用前者。
添加回答
舉報
0/150
提交
取消