リスト内包表記の中で二重のループとif文での条件分岐をしたいのですが、わかりません。
一番基本的な内包表記の書き方については理解できていると思うのですが、for文が二回出てきたりするといまいちわからなくなってしまうレベルです。
Python3
1lst = [1, 2, 3, 4] 2lst2 = [4, 5, 6, 2] 3 4for x in lst: 5 for y in lst2: 6 if x == y: 7 lst.remove(x)
現在、上記のようなコードを考えています。
二つのリストがあり、それらの要素を比較して等しいものがあればlst
から除去する、という処理を想定しています。
pythonの内包表記を少し詳しくの下の方に、内包表記で二重のfor文についての記述があるのですが、いまいちわかりませんでした。
サイトの内包表記はなんとか理解できるのですが、上記のように異なるリストの要素同士を比較して同じなら削除する、という処理にする場合はどのように書けばいいのでしょうか?
また、そもそも上記のような処理の場合は内包表記にせず、for文を二回書いてif文で判定するような処理の方が良いのでしょうか?
ご教示いただけますと幸いです。よろしくお願いいたします。

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/31 02:46
2018/10/31 02:50
2018/10/31 02:54