У меня есть следующий код:Как использовать переменную для построения хэш в Ruby,
temphash = {}
temphash[:ScenarioCnt] = scn_Cnt
temphash[:ScenarioNbr] = scn_Num
for i in 0..$event_Action_cnt
temphash[:variablename] = value
p temphash
end
$cash_File.write(JSON.pretty_generate(temphash))
В for
цикле я хочу, чтобы заменить имя ключа с именем переменной. Если я использую:
temphash[:variablename] = value
Затем он печатает:
{"variablename": value}
Я хочу, чтобы значение переменной на замененный с именем переменной.
Пожалуйста, дайте мне знать, как это можно сделать.
Получить в привычка поддерживать правильный отступ. Ваше будущее будет благодарно вам. Кроме того, это помогает нам читать и понимать ваш код, пытаясь помочь вам. Чем быстрее мы сможем это сделать, тем быстрее мы сможем работать над решением и двигаться дальше, чтобы помочь другим. –
Пожалуйста, прочитайте «[ask]» вместе со связанными страницами и «[mcve]». Ваш вопрос явно не задан. Возможно, пример вашего ожидаемого результата поможет? Кроме того, ваш код нуждается в помощи; Мы используем snake_case для имен переменных, а не смесь snake_case и camelCase. Не используйте '$' (globals), если вы не понимаете, почему их не следует использовать; Они являются слабым повязкой для плохого понимания переменных областей. Циклы 'for' не одобряются, потому что они пропускают промежуточную переменную; Вместо этого используйте 'event_action_cnt.times'. –
Спасибо, что оценили все комментарии. Я не уверен, что все понимаю, но попытаюсь это понять. Я нахожусь в прошлом, поэтому потребуется некоторое время. – Anoop