[過去ログ] 【まず1嫁】くだすれPython(超初心者用) その58 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
204: デフォルトの名無しさん [sage] 2022/11/12(土) 08:46:06.49 ID:CpbGZOKC(1/3) AAS
同じ名前を持つデータを見つけるたびに削除するスクリプトが必要なんですけど
for loopで全データにアクセスし、アクセスしたデータの名前をlistに保存していき
そのlistにある名前と同じ名前をもったデータにアクセスしたらそのデータを削除するというのを考えたんですけど
もっと効率良い方法あったりしますかね
208
(1): デフォルトの名無しさん [sage] 2022/11/12(土) 10:49:03.57 ID:CpbGZOKC(2/3) AAS
直接検索できないのでデータを総当りしないとダメなんですわ
今までsetとlistしかいじったことないんですがスクリプトにするとこんな感じですかね?

names = set()
for i in active_object.data
if i.name in names:
active_object.data.remove
else:
names.add(i.name)
211
(1): デフォルトの名無しさん [sage] 2022/11/12(土) 12:26:42.08 ID:CpbGZOKC(3/3) AAS
>>209
209(2): デフォルトの名無しさん [sage] 2022/11/12(土) 11:13:50.56 ID:AtMreGxi(1/3) AAS
名前のセットを作ってリストの最初の見つけるとか?

names = set(a.name for a in before)
after = [next(a for a in before if a.name == n) for n in names]
これはnext関数で重複要素を呼び出した時点でbefore内のデータを消してるってことですかね?
next関数で呼び出したデータをlistのafterに格納するのはなんででしょうか
削除したデータをあとから参照するとかでしょうか
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.040s