将文件的行复制到ruby中的hashmap中
我有一个多行的文件。在每一行中,有两个单词和一个数字,用逗号分隔,例如a、b、1。这意味着字符串A和字符串B的键为1。我写了下面的代码将文件的行复制到ruby中的hashmap中,ruby,Ruby,我有一个多行的文件。在每一行中,有两个单词和一个数字,用逗号分隔,例如a、b、1。这意味着字符串A和字符串B的键为1。我写了下面的代码 File.open(ARGV[0], 'r') do |f1| while line = f1.gets puts line end end 我正在寻找一个如何拆分和复制字符和数字的方法,使前两个单词的最后一个数字作为hashmap中的键 这对你有用吗 hash = {} File.readlines(ARGV[0]).ea
File.open(ARGV[0], 'r') do |f1|
while line = f1.gets
puts line
end
end
我正在寻找一个如何拆分和复制字符和数字的方法,使前两个单词的最后一个数字作为hashmap中的键 这对你有用吗
hash = {}
File.readlines(ARGV[0]).each do |line|
var = line.gsub(' ','').split(',')
hash[var[2]] = var[0],var[1]
end
这将使:
hash['1'] = ['a','b']
我不知道您是想将数字1存储为整数还是字符串,如果您要查找的是整数,只需在存储之前执行var[2].\u I
稍微修改一下你的代码,我认为这样比较短,如果我有任何错误,一定要告诉我。hi,实际上新行“\n”也在被复制,现在看起来像{“1\n”=>[“a”,“b”]}。我也需要删除\n。有什么想法吗?哦,对不起,在存储之前,您可以执行
var[2]。chop
或者如果您将其存储为整数,则.to\u i
方法将自行处理。