2011-01-13 62 views
0

可能是什麼可能的原因?什麼是可能的原因需要一個文件,但它並沒有跑

#wordlist.rb 
code_words = { 
'starmonkeys' => 'Phil and Pete, those prickly chancellors of the New Reich', 
'catapult' => 'chucky go-go', 'firebomb' => 'Heat-Assisted Living', 
'Nigeria' => "Ny and Jerry's Dry Cleaning (with Donuts)", 
'Put the kabosh on' => 'Put the cable box on' 
} 


irb(main):001:0> require 'wordlist.rb' 
=> true 
irb(main):002:0> code_words 
NameError: undefined local variable or method `code_words' for main:Object 
    from (irb):2 
    from :0 

回答

3

該文檔爲Kernel#load

在任何情況下將加載文件中的任何地方 變量是 傳播到負載的環境。

正如piyush所說的,一個全局或常量是好的。

+0

但是這段代碼在裏面很辛苦......嗯,他們錯了? – wizztjh 2011-01-14 03:27:41

2

將其聲明爲常量或全局變量。 code_words存在於require的範圍內,並且在加載之後死亡/不可訪問。

+1

或者一個實例變量,例如`@code_words = ...` – Phrogz 2011-01-13 15:07:58

相關問題