Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonのバイナリリストでTrue値のインデックスを取得する


Pythonリストにtrueまたはfalse、0または1などの値が含まれている場合、それはバイナリリストと呼ばれます。この記事では、バイナリリストを取得し、リスト要素が真である位置のインデックスを見つけます。

列挙あり

enumerate関数は、リストからすべての要素を抽出します。抽出された値が真であるかどうかをチェックするために、in条件を適用します。

listA = [True, False, 1, False, 0, True]
# printing original list
print("The original list is :\n ",listA)
# using enumerate()
res = [i for i, val in enumerate(listA) if val]
# printing result
print("The indices having True values:\n ",res)

出力

上記のコードを実行すると、次の結果が得られます-

The original list is :
[True, False, 1, False, 0, True]
The indices having True values:
[0, 2, 5]

圧縮あり

compressを使用して、リスト内の各要素を繰り返し処理します。これにより、値が真である要素のみが表示されます。

from itertools import compress
listA = [True, False, 1, False, 0, True]
# printing original list
print("The original list is :\n ",listA)
# using compress()
res = list(compress(range(len(listA)), listA))
# printing result
print("The indices having True values:\n ",res)

出力

上記のコードを実行すると、次の結果が得られます-

The original list is :
[True, False, 1, False, 0, True]
The indices having True values:
[0, 2, 5]

  1. Pythonのbool()

    Pythonのbool()は、指定されたパラメーターのブール値を返します。パラメータは次のいずれかになり、結果は以下の条件に従います。ここに記載されている値を除いて、残りの値はTrueを返します。 渡されたパラメータ値が以下の場合、Falseが返されます- なし 誤った状態 任意の数値タイプのゼロ 空のシーケンス()、[]など {}のような空のマッピング 0またはFalseを返す__bool__()または__len()__メソッドを持つクラスのオブジェクト 例 以下のプログラムでは、そのようなすべてのシナリオ例を示しています。 print("

  2. Pythonディクショナリからすべての値のリストを取得するにはどうすればよいですか?

    辞書からすべてのキーのリストを取得するには、dict.values()関数を使用するだけです。 例 my_dict = {'name': 'TutorialsPoint', 'time': '15 years', 'location': 'India'} value_list = list(my_dict.values()) print(value_list) 出力 これにより、出力が得られます- ['TutorialsPoint', '15 years', &#