我是Ruby的新手。我希望从包含我想要单独使用的工具的模块中导入函数。在Python中,我只需这样做:
def a():
...
def b():
...
if __name__ == '__main__':
a()
b()
这允许我运行程序或将其作为模块导入,以便单独使用a()
和/或b()
。Ruby中的等效范例是什么?
发布于 2013-10-15 06:55:46
如果堆栈跟踪为空,我们可以从右边和左边开始执行。我不知道这是常规还是非常规的用法,因为我已经使用Ruby大约一周了。
if caller.length == 0
# do stuff
end
概念验证:
文件: test.rb
#!/usr/bin/ruby
if caller.length == 0
puts "Main script"
end
puts "Test"
文件: shmest.rb
#!/usr/bin/ruby -I .
require 'test.rb'
puts "Shmest"
用法:
$ ./shmest.rb
Test
Shmest
$ ./test.rb
Main script
Test
发布于 2020-02-12 07:50:46
https://stackoverflow.com/questions/2249310
复制相似问题