[解決済み] ネストされた2つのリストの交点を求めるには?
2022-03-21 09:16:46
質問
2つのフラットリストの交点を求める方法を知っています。
b1 = [1,2,3,4,5,9,11,15]
b2 = [4,5,6,7,8]
b3 = [val for val in b1 if val in b2]
または
def intersect(a, b):
return list(set(a) & set(b))
print intersect(b1, b2)
しかし、ネストされたリストに対して交差点を見つけなければならないとき、私の問題は始まります。
c1 = [1, 6, 7, 10, 13, 28, 32, 41, 58, 63]
c2 = [[13, 17, 18, 21, 32], [7, 11, 13, 14, 28], [1, 5, 6, 8, 15, 16]]
最後に私が受け取りたいのは
c3 = [[13,32],[7,13,28],[1,6]]
これ、みんな手伝ってくれる?
関連
どのように解決するのですか?
必要なら
c1 = [1, 6, 7, 10, 13, 28, 32, 41, 58, 63]
c2 = [[13, 17, 18, 21, 32], [7, 11, 13, 14, 28], [1, 5, 6, 8, 15, 16]]
c3 = [[13, 32], [7, 13, 28], [1,6]]
では、Python 2の解決策を紹介します。
c3 = [filter(lambda x: x in c1, sublist) for sublist in c2]
Python 3では
filter
の代わりにイテラブルを返します。
list
というように
filter
の呼び出しは
list()
:
c3 = [list(filter(lambda x: x in c1, sublist)) for sublist in c2]
説明する。
フィルタ部分は、各サブリストの項目を受け取り、それがソースリストc1にあるかどうかをチェックする。 リスト内包は c2 の各サブリストに対して実行される。
関連
-
[解決済み】Flask ImportError: Flask という名前のモジュールがない
-
[解決済み] リストのリストからフラットなリストを作るには?
-
[解決済み] Pythonで2つのリストを連結する方法は?
-
[解決済み] 2つのリストを辞書に変換するにはどうしたらいいですか?
-
[解決済み] リスト内の重複を削除する
-
[解決済み] リストにおけるdel、remove、popの違いについて
-
[解決済み] 2つのリストの差を取得する
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】2つのリストを並列に反復処理する方法は?
-
[解決済み】2つの辞書を1つの式でマージする(辞書の和をとる)には?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python Decorator 練習問題
-
Python 人工知能 人間学習 描画 機械学習モデル作成
-
Evidentlyを用いたPythonデータマイニングによる機械学習モデルダッシュボードの作成
-
Python LeNetネットワークの説明とpytorchでの実装
-
Pythonの画像ファイル処理用ライブラリ「Pillow」(グラフィックの詳細)
-
[解決済み】DataFrameのコンストラクタが正しく呼び出されない!エラー
-
[解決済み】OSError: [WinError 193] %1 は有効な Win32 アプリケーションではありません。
-
[解決済み】TypeErrorを取得しました。エントリを持つ子テーブルの後に親テーブルを追加しようとすると、 __init__() missing 1 required positional argument: 'on_delete'
-
[解決済み] リスト内の重複を見つけ、それを含む別のリストを作成するにはどうすればよいですか?
-
[解決済み] Pythonで浅いリストを平坦にする [重複] [重複