У меня есть хэш, значения которого в основном целые, но некоторые из них не определены. Я хотел бы установить все эти неопределенные значения в ноль, либо с помощью цикла for
, либо, желательно, с более элегантным методом. Может ли кто-нибудь предложить решение?Установка значения по умолчанию для неопределенных значений хэша
6
A
ответ
11
Оба метода используют Еогеасп, тест
for my $key (keys %hash) {
$hash{$key} //= 0;
}
$_ //= 0 for values %hash;
//=
оператора, если переменная не определена и присвоить новое значение, когда оно есть.
+0
Удивительно, спасибо! –
Смежные вопросы
- 1. Установка значений по умолчанию для свойств класса
- 2. N2: Установка значений по умолчанию для ContentItems
- 3. Установка значений по умолчанию для коллекций Jekyll
- 4. Установка значений по умолчанию для определенных дней
- 5. Установка значения по умолчанию для значения параметра
- 6. Установка значений по умолчанию для One2many поля
- 7. Установка значений по умолчанию для JTextField LAF
- 8. CMake: установка значений по умолчанию для аргументов
- 9. Установка значений по умолчанию для CoreData
- 10. Установка значений по умолчанию для свойств NSString
- 11. Установка значения ячейки по умолчанию
- 12. Установка строкового значения по умолчанию
- 13. установка значений по умолчанию datacolumn, хорошая практика?
- 14. Установка значения по умолчанию для внешнего ключа?
- 15. Установка значения по умолчанию для Html.DropDownListFor
- 16. Установка значения по умолчанию для свойств объекта
- 17. Установка значения по умолчанию для dropDownList
- 18. установка другого значения по умолчанию для столбца
- 19. SQLITE - Установка значения по умолчанию для INSERT
- 20. iOS: установка значения по умолчанию для UISwitch
- 21. Установка значения по умолчанию для @ Html.TextAreaFor()
- 22. Установка значения по умолчанию для «формы создания»
- 23. Установка значения по умолчанию для точки столбца
- 24. kendo multiselect установка значений по умолчанию
- 25. Установка ctypes.Structure значения по умолчанию
- 26. Установка значения по умолчанию сущности
- 27. установка значения по умолчанию superglobal
- 28. Databinding - установка значения по умолчанию
- 29. Установка значения по умолчанию при получении значений XML через Linq
- 30. установка значения по умолчанию в dojo filteringselect
не беспокойтесь о «элегантном», просто напишите код, который имеет смысл для вас – ysth
@ysth imho, когда OPs просят «элегантные», что означает, что он знает, как писать по-своему, но хочет узнать больше эффективный способ_. +1 для этих вопросов :) – jm666
Это действительно должно быть сделано, когда ваш хэш построен в первую очередь. – Borodin