以下の仕様もダメ。ループでの要素削除がまともに出来ない。この不具合
を回避するためにはリストをまるまるコピーしなくてはならず、とても効率が悪い。
Cythonでコンパイルしても、Cに比べてとても遅くなってしまう。
http://blog.livedoor.jp/kmiwa_project/archives/1030391127.html
http://sakitake.blogspot.com/2012/10/pythonfor.html
Python で リストの中身をforループで削除する時の注意点。
numbers = [1,2,3,4,5]
とあって、for ループで numbers の中身を消したいと思って、下記のようにすると、失敗する。
for e in numbers:
numbers.remove(e)
numbers の中に、 2と4 が残ったままとなる。
numbers = [2,4]
Pythonの仕様。
そこで、このようにする。
for e in numbers[:]:
numbers.remove(e)
[:] とすることで元のリストのコピーとなり要素の順番を全て取得でき、全ての要素を順番に削除が行える。
Pythonについて(アンチ専用)
■ このスレッドは過去ログ倉庫に格納されています
889デフォルトの名無しさん
2018/09/15(土) 15:32:30.08ID:heijdb7v■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【北区小学校火災】女性教師「電気ストーブ近くで洗濯物を乾かしていた」 失火とみて捜査 燃えた残骸に“繊維片”付着 ★8 [Ailuropoda melanoleuca★]
- 【W杯】元ブラジル代表ロナウド氏「日本には簡単に勝てる」決勝T1回戦で対戦可能性…避けたいのは「オランダ」 ★3 [首都圏の虎★]
- 【クールジャパン】ゲームやアニメなどコンテンツ産業の海外展開支援、政府が司令塔の法人設立へ…日本の「勝ち筋」に官民の叡智結集 [樽悶★]
- 【ブロマンス詐欺】「好き♡」 70代男性にメッセージ 現金2000万円をだまし取った疑い 64歳の男を逮捕 [nita★]
- 【アニメ】『日本の最強アニソンBEST100』 1位はまたもや『残酷な天使のテーゼ』… 視聴者は「出来レース」「見飽きた」の声★2 [冬月記者★]
- 【サッカーW杯】中東勢が大苦戦 アジア杯連覇のカタール含む5チームが第2節終了で勝利なし [首都圏の虎★]