将变量保存到文件
Save variables to a file
我正在 RHEL6 上做一个 Ruby 项目,其中包括一个测验。答案是 bool 变量,如果你的答案正确与否,它会改变。
Atm 我正在尝试为布尔值添加保存选项,但我遇到了问题。如何从方法访问代码中编写的变量?
代码示例:
@inf_cmd_q1 = true
@inf_cmd_q2 = false
@inf_cmd_q3 = true
@inf_cmd_q4 = false
@inf_cmd_q5 = true
@inf_cmd_q6 = true
@inf_cmd_q7 = false
@inf_cmd_q8 = true
@inf_cmd_q9 = true
@inf_cmd_q10 = false
def save(fname)
for i 1..10
system("echo #{@inf_cmd_q#{i}} >> /quiz/#{fname}")
end
end
- inf_cmd_q(num)- 答案的 bool var
- fname- 要保存到的文件的名称
我知道它不会工作,但我很难弄清楚如何让它工作,而且我从未使用过实例变量,因为我刚开始使用 Ruby.
有什么建议吗?
您可以动态打印 instance variables
。
1.upto 10 do |i|
puts "#{self.instance_variable_get("@inf_cmd_q#{i}")}"
end
如果需要将数据保存到文件,使用File
方法。
顺便说一句:为了保存数据,您可以使用 JSON
数据结构。
我正在 RHEL6 上做一个 Ruby 项目,其中包括一个测验。答案是 bool 变量,如果你的答案正确与否,它会改变。
Atm 我正在尝试为布尔值添加保存选项,但我遇到了问题。如何从方法访问代码中编写的变量?
代码示例:
@inf_cmd_q1 = true
@inf_cmd_q2 = false
@inf_cmd_q3 = true
@inf_cmd_q4 = false
@inf_cmd_q5 = true
@inf_cmd_q6 = true
@inf_cmd_q7 = false
@inf_cmd_q8 = true
@inf_cmd_q9 = true
@inf_cmd_q10 = false
def save(fname)
for i 1..10
system("echo #{@inf_cmd_q#{i}} >> /quiz/#{fname}")
end
end
- inf_cmd_q(num)- 答案的 bool var
- fname- 要保存到的文件的名称
我知道它不会工作,但我很难弄清楚如何让它工作,而且我从未使用过实例变量,因为我刚开始使用 Ruby.
有什么建议吗?
您可以动态打印 instance variables
。
1.upto 10 do |i|
puts "#{self.instance_variable_get("@inf_cmd_q#{i}")}"
end
如果需要将数据保存到文件,使用File
方法。
顺便说一句:为了保存数据,您可以使用 JSON
数据结构。