[解決済み] Python -複数リストの交わり?
2023-08-12 11:38:15
質問
Pythonで遊んでいて、2つのリストの交差点を得ることができます。
result = set(a).intersection(b)
では、もし
d
を含むリストです。
a
と
b
と、3つ目の要素である
c
の中にある 3 つのリストの交点を求める組み込み関数はありますか?
d
? だから例えば
d = [[1,2,3,4], [2,3,4], [3,4,5,6,7]]
とすると、結果は
[3,4]
どのように解決するのですか?
2.4の場合、交差関数を定義すればよいでしょう。
def intersect(*d):
sets = iter(map(set, d))
result = sets.next()
for s in sets:
result = result.intersection(s)
return result
新しいバージョンのpythonのために。
intersectionメソッドは任意の数の引数を取ります。
result = set(d[0]).intersection(*d[1:])
あるいは、リストをスライスしてコピーを作るのを避けるために、最初のセットとそれ自身を交差させることができます。
result = set(d[0]).intersection(*d)
どちらが効率的なのかはよくわからないし
d[0]
のような組み込みのチェックがない限り、リストのサイズに依存するような気がします。
if s1 is s2:
return s1
を交差法の中で
>>> d = [[1,2,3,4], [2,3,4], [3,4,5,6,7]]
>>> set(d[0]).intersection(*d)
set([3, 4])
>>> set(d[0]).intersection(*d[1:])
set([3, 4])
>>>
関連
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Flaskで1時間ごとに関数を実行するようにスケジュールするには?
-
[解決済み] タプルのリストを複数のリストに変換するには?
-
[解決済み] Python 3でバイナリデータを標準出力に書き込むには?
-
[解決済み] pandasのタイムゾーンに対応したDateTimeIndexを、特定のタイムゾーンに対応したナイーブなタイムスタンプに変換する。
-
[解決済み] オブジェクトのリストに特定の属性値を持つオブジェクトが含まれているかどうかをチェックする
-
[解決済み] PySparkでデータフレームのカラムをString型からDouble型に変更する方法は?
-
[解決済み] pycharmがタブをスペースに自動変換する
-
[解決済み] Pythonでランダムなファイル名を生成する最良の方法
-
[解決済み] データクラスとtyping.NamedTupleの主な使用例
-
[解決済み] 認証プラグイン 'caching_sha2_password' はサポートされていません。