Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:如何导入一个modul,它的值由一个字符串给出?_Python - Fatal编程技术网

Python:如何导入一个modul,它的值由一个字符串给出?

Python:如何导入一个modul,它的值由一个字符串给出?,python,Python,这是一个非常初级的问题 我有错误消息的代码: a = "sqlite3" b = pandas import a import b 如何更改代码,但不使用import sqlite3或import pandas,以获得正确的结果?谢谢 您可以使用importlib,但我会仔细考虑为什么需要这样做 import importlib # Equivalent to import sqlite3 as somemodule a = "sqlite3" somemodule = importlib.

这是一个非常初级的问题

我有错误消息的代码:

a = "sqlite3"
b = pandas
import a
import b

如何更改代码,但不使用
import sqlite3
import pandas
,以获得正确的结果?谢谢

您可以使用
importlib
,但我会仔细考虑为什么需要这样做

import importlib

# Equivalent to import sqlite3 as somemodule
a = "sqlite3"
somemodule = importlib.import_module(a)

您可以使用
importlib
,但我会仔细考虑为什么需要这样做

import importlib

# Equivalent to import sqlite3 as somemodule
a = "sqlite3"
somemodule = importlib.import_module(a)

如果您没有非常、非常充分的理由从字符串导入,请不要这样做。这是个坏主意。尝试重新编写代码,以便脚本知道需要使用哪些库。我不知道您打算做什么,但最好同时导入两个库并保留一个未使用的库,而不是尝试从字符串导入

真正需要的人可以尝试:

importlib.import_模块('字符串')


要感谢gecco在

中的回答,如果您没有非常、非常充分的理由从字符串导入,请不要这样做。这是个坏主意。尝试重新编写代码,以便脚本知道需要使用哪些库。我不知道您打算做什么,但最好同时导入两个库并保留一个未使用的库,而不是尝试从字符串导入

真正需要的人可以尝试:

importlib.import_模块('字符串')


感谢gecco在

中的回答,我真的很好奇你为什么要这么做。请告诉我。@klutt好吧,我在想如何用更少的导入行来生成代码。。。初学者经常会想到奇怪的事情。:-)我明白了。”“因为我能”总是一个合理的理由。但我很难找到任何实际用途。将您的
import
语句更多地视为文档,而不是可以(更不用说应该)重构的代码。我真的很好奇您为什么要这样做。请告诉我。@klutt好吧,我在想如何用更少的导入行来生成代码。。。初学者经常会想到奇怪的事情。:-)我明白了。”“因为我能”总是一个合理的理由。但我很难找到任何实际用途。将您的
import
语句更多地视为文档,而不是可以(更不用说应该)重构的代码。