我有一个名为“contents.txt”的文件,其中包含 YAML 格式的文本。
我在命令行中将它作为ruby Minesweeper.rb contents.txt
然后,我有一个加载功能:
def self.load
grid = YAML::load(File.open(ARGV[0]))
grid
end
在我的主play
循环中,我使用命令从用户那里获取输入input = gets.chomp
问题是,在我从用户那里获取任何输入之前,我得到了一个错误,因为输入没有从用户那里得到任何东西。相反,它获取文件的每一行并通过循环运行,直到当然发生错误,因为我的代码未配置为运行随机输入,例如来自文件的输入。
YAML::load
这是我不知道的一些副作用吗?我怎么能越过这个?