加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

如何在Python中动态导入?

发布时间:2020-12-20 11:28:35 所属栏目:Python 来源:网络整理
导读:我是 Python的新手,任何人都可以让我知道如何在python脚本中执行以下两个导入,然后是另一行,而我在每个循环中都会变更? (以下三行位于“for”循环中,其计数器为“i”) import Test_include_ifrom Test_include_i import*model = Test_include_i.aDefinedFun
我是 Python的新手,任何人都可以让我知道如何在python脚本中执行以下两个导入,然后是另一行,而我在每个循环中都会变更?
(以下三行位于“for”循环中,其计数器为“i”)

import Test_include_i
from Test_include_i import*
model = Test_include_i.aDefinedFunction

非常感谢你 :)

解决方法

这不是一个好主意,但这是它的实现:

from importlib import import_module # Awesome line! :)

for i in range(1000):
    test_include = import_module("Test_include_%s" % i)
    model = test_include.aDefinedFunction

关于提供的方法之间的差异:

> __import__是从bla import blubb和import bla语句处理的低级接口.它的直接用途是根据现在不鼓励的文件.> importlib.import_module是__import__的便捷包装器,是首选.导入的模块将记录在sys.modules中,因此将被缓存.如果您在会话期间更改了代码并想要使用新版本,则必须使用imp.reload显式重新加载它.> imp.load_module更接近内部,并将始终为您加载模块的最新版本,即如果已加载,则load_module等效于模块上的imp.reload调用.但是要使用此函数,您必须提供所有4个参数,这些参数基本上是imp.find_module返回的参数.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读