podstawie odpowiedzi tutaj w Elixir Slack, istnieje wiele sposobów sprawdzenia, czy dany przedmiot istnieje na liście. za odpowiedź przez @Gazler:
Enum.member?(["foo", "bar"], "foo")
# true
lub po prostu
"foo" in ["foo", "bar"]
# true
lub
Enum.any?(["foo", "bar"], &(&1 == "foo")
# true
lub jeśli chcesz znaleźć i zwrócić przedmiot zamiast true
lub false
Enum.find(["foo", "bar"], &(&1 == "foo")
# "foo"
Jeśli chcesz sprawdzić krotki, trzeba konwertować do listy (@Gazler kredytowej):
Tuple.to_list({"foo", "bar"})
# ["foo", "bar"]
Ale jak @CaptChrisD zauważył w komentarzach, jest to rzadkością potrzeba krotki bo zazwyczaj spotyka dba o dokładne położenie przedmiotu w krotce w celu dopasowania wzorca.
dla listy widziałem gdzie chcesz po prostu sprawdzić, czy element istnieje w którym Enum.member/2 będzie? bądź dobry. Ale dla krotki zazwyczaj dba się o pozycję wartości, to jest jedna z piękności krotek ... może warto rozważyć użycie krotki, jeśli nie interesuje cię pozycja – CaptChrisD
Możesz chcieć oznaczyć @ Gazler odpowiedź jako zaakceptowana odpowiedź, jeśli to prawda. –