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

Python –Matrixから辞書キーを表す不変の行をフィルタリングします


行列から辞書キーを表す不変の行をフィルタリングする必要がある場合は、リスト内包表記と「isinstance」メソッドを使用できます。

以下は同じのデモンストレーションです-

my_list = [[24, 15, [32, 33, 12]], ["pyt", 8, (14, 54)], [{15:24}, 13, "fun"], [True, "cool"]]

print("The list is :")
print(my_list)

my_result = [row for row in my_list if all(isinstance(element, int) or isinstance(element, bool) or isinstance(element, float) or isinstance(element, tuple) or isinstance(element, str) for element in row)]

print("The result is :")
print(my_result)

出力

The list is :
[[24, 15, [32, 33, 12]], ['pyt', 8, (14, 54)], [{15: 24}, 13, 'fun'], [True, 'cool']]
The result is :
[['pyt', 8, (14, 54)], [True, 'cool']]

説明

  • リストのリストが定義され、コンソールに表示されます。

  • リスト内包表記を使用して要素を反復処理し、「isinstance」メソッドを使用して要素が特定のデータ型に属しているかどうかを確認します。

  • はいの場合、リストに保存され、変数に割り当てられます。

  • これは、コンソールに出力として表示されます。


  1. キーと値のリストからPython辞書を作成するにはどうすればよいですか?

    L1とL2がキーとそれぞれの値を含むリストオブジェクトである場合、次のメソッドを使用して辞書オブジェクトを作成できます。 2つのリストを圧縮し、dict()関数を使用して辞書に変換します >>> L1 = [a,b,c,d] >>> L2 = [1,2,3,4] >>> d = dict(zip(L1,L2)) >>> d {a: 1, b: 2, c: 3, d: 4} 辞書理解構文の使用 >>> L1 = [a,b,c,d] >>> L2 = [1,2,3,4] >&

  2. Python辞書からすべてのキーのリストを取得するにはどうすればよいですか?

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