В Python действительно элегантный синтаксис для проверки значения по нескольким шаблонам.
2 in [1,2,4] #=> True
6 in [1,2,4] #=> False
Порядок в версии Ruby просто кажется неправильным:
[1,2,4].include?(2)
Я понимаю, что include?
делаетОО чувства больше чем 2.included_in?([1,2,4])
, мне все еще не нравится.В Ruby даже есть ключевое слово in
, но, похоже, оно используется только в конструкции for i in [1,2,4]
, но не для тестов на членство.
Другой способ таков:
(case 2 when 1,2,4 then true end)
Довольно многословно, но позволяеттестирование паттернов:
(case file_name when "README", /\.txt\z/ then true end)
Все еще не очень читабельно.
Я случайно упустил какой-то действительно изящный способ?