gpt4 book ai didi

ruby - 相当于Python在Ruby中的动态导入语句?

转载 作者:数据小太阳 更新时间:2023-10-29 08:40:23 25 4
gpt4 key购买 nike

在 python 中,要动态加载模块,您可以简单地使用 _____import_____声明并将模块分配给变量,即(来自文档):

spam = __import__('spam', globals(), locals(), [], -1)

我在 python 中多次使用它来模拟动态模块加载/卸载,因为要“卸载”模块,您可以简单地删除对它的所有引用,即:

spam = None

在 Ruby 中是否有类似的东西?我查看了其他几个问题( thisthisthis ),但我想知道如何尽可能将加载的模块限制为变量。

最佳答案

这是否符合您的要求?

require 'bigdecimal/math' # a module from stdlib
bm = BigMath # a module is just an object
BigMath = nil # yields a warning, but BigMath is gone.
puts bm.log(10, 40).to_s # it's alter ego lives.
#=> 0.230258509299404568401799145468436420760110148862877297632502494462371208E1

关于ruby - 相当于Python在Ruby中的动态导入语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8449134/

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