我有一个股票代码的文本文件,每个符号都在自己的行上。在 Ruby 中,我从文本文件中创建了一个数组,如下所示:
symbols = []
File.read('symbols.txt').each_line do |line|
symbols << line.chop!
end
对于数组中的每个符号,我想从一个 json 文件(例如 MSFT.json)中读取并执行一些计算(现在所有这些都在工作),然后对数组中的下一个符号执行相同的操作。
当尝试“调用”并对数组中的第一项执行计算时,我这样做了:
json = File.read("#{symbols[0]}.json")
#...calculations come after this
这工作得很好,它确实为第一个符号运行了整个程序,但当然不会继续对剩余的符号执行相同的步骤(我知道那是因为我在数组中指定了一个索引]。
现在我知道该程序适用于单个符号,我现在希望它在数组中的所有符号上运行......所以在第一个块之后,我尝试添加:symbols.each do
,并[0]
从File.read
行中删除(并添加end
在计算结束)。我希望它会遍历每个符号的“do”和“end”之间的所有内容。那没有用。
然后我尝试在第一个块之后添加它:
def page(symbols, i)
page[i]
end
并将行更改File.read
为:json = File.read("#{page[i]}.json)
但这也没有用。
任何帮助表示赞赏。非常感谢