Итак, у меня есть инициализированный хэш имен, и я пытаюсь получить пользовательский ввод, чтобы удалить пару ключей из хэша. Вот мой код:Удаление keypair из hash (Ruby) на самом деле не имеет значения
group = {:sally => "Sally Samsonite", :johnny => "Johnny Jameson", :beth => "Beth Benitsky", :corinne => "Corinne Camelia"}
print "Please enter a name to remove #{group.keys} >"
group.except!(gets)
group.each do |key, value|
puts "#{value}"
end
После запуска программы и ввода «: вылазка» хэш возвращается как это оригинал:
Please enter a name to remove [:sally, :johnny, :beth, :corinne] >:sally
Sally Samsonite
Johnny Jameson
Beth Benitsky
Corinne Camelia
Как удалить элемент навсегда?
Использование «получает. chomp.to_sym 'до сих пор не удаляет ввод ключа I через терминал. Редактировать: Исправлено с помощью «gets.parameterize.to_sym» –
@SamLim: Обновлено. Этот код теперь работает с «sally» и «: sally» в качестве входных данных. –
@ MarkoAvlijaš 1) почему я? :) 2) Отвечая на ваш вопрос - нет, я этого не сделал. –