在ruby中返回require语句的值

Lok*_*esh 1 ruby require

require 'lib'在红宝石中表示返回值的含义是什么?'lib'是任何一个想要包含的库?

例如,当我跑

>>> require 'nmatrix'
Run Code Online (Sandbox Code Playgroud)

我得到False了返回值.这是什么意思?

Mih*_*scu 8

false如果已加载给定库,则require返回.

>> require 'time'
=> true # time.rb was successfully loaded
>> require 'time' 
=> false # time.rb was already found in-memory, it won't be loaded again
Run Code Online (Sandbox Code Playgroud)

要求已加载的库在Ruby中没有任何效果.返回标志用于为您提供信息.一个false结果翻译成:" 你问我要加载这个库,但它已经在内存中,我不会再加载它."

另一方面,您有加载,它将在每次调用加载并执行文件名的内容.