[過去ログ] くだすれPython(超初心者用) その46【Ruby禁止】 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
553(3): デフォルトの名無しさん [sage] 2020/02/09(日) 12:11:02.39 ID:vWZlCr2H(1/2) AAS
list = [1,2,3,4,5,6,7,8,9,10]
というリストがあった場合
for i in list:
とするよりも
for i in set(list):
とする方が高速ですか?
それとも、setに変更しても元々がリストなので早くならないですか?
555(1): デフォルトの名無しさん [sage] 2020/02/09(日) 12:26:35.34 ID:mfrF5HLR(1) AAS
>>553
試すといいよ。ってのが正しいと思うけど、あえてマニュアルから。
https://docs.python.org/ja/3/reference/compound_stmts.html#the-for-statement
> 式リストは一度だけ評価されます。
ってあるから、ほぼ変わらんのでは?
562: デフォルトの名無しさん [sage] 2020/02/09(日) 15:22:07.62 ID:O6Vx4x7H(1/2) AAS
>>553
listをsetに変換するコストを無視してもsetをイテレートするほうが遅いよ
hash tableをイテレートする時に必要な処理とlistをイテレートする時に必要な処理の違い
といってもその差は微々たるものだから
その差が重要なプログラムを書こうとしてるなら言語を変えたほうがいいかも
577: デフォルトの名無しさん [sage] 2020/02/10(月) 16:12:22.59 ID:fRmEVRio(2/8) AAS
色々脱線はしているのかもしれないが、最初の質問は >>553 で
リストを処理するのに、そのままよりも、
setを噛ませた方が速くなるかどうか、ということであって
リストの内容は全件処理しているようだし
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.038s