ブール値のリストにTrueが含まれているかどうかを確認するには?
例えば
[True,False] = True
[False,False] = False
[False,False,True] = True
ブール値のリストにTrueが含まれているかどうかを確認するには?
例えば
[True,False] = True
[False,False] = False
[False,False,True] = True
関数を探していor
ます:
> ghci
Prelude> or [True, False]
True
Prelude> or [False, False]
False
リストのすべての要素が である場合and
に返す関数もあります。True
True
Hoogle の標準関数の存在をいつでも確認できます。
例: http://www.haskell.org/hoogle/?hoogle=%5BBool%5D+-%3E+Bool
いくつかの機能を提供しますor
が、そのうちの 1 つがこの要件の機能です。
編集:
or
関数です。そのシグネチャor :: [Bool] -> Bool
は、 のリストを取り、Bool
を返すことを意味しますBool
。
だから、ただやっている
myList = [True, False, False]
if (or myList) then ..something.. else ..something else..
コードでこれを使用する方法になるかもしれません (..something.. と ..something else.. を実際の式に置き換えてください)。
リストに値が含まれているかどうかを確認する一般的な方法は、次のように使用することelem
です
Prelude> True `elem` [True, False]
True
Prelude> True `elem` [False, False]
False
Prelude> True `elem` [False, False, True]
True
HoogleまたはHayooを検索エンジンとして使用してみてください。そして、答えを得るためにプラットフォームライブラリをサーフィンしてください。
返信はプレリュードにあります:
or :: [Bool] -> Bool