Pythonのお勉強 Part54 at TECH
[2ch|▼Menu]
983:デフォルトの名無しさん
17/12/19 13:40:41.77 I9cB5PBv.net
>>960
もうちょっと速度評価してみた結果、idの種類が5で内包表記版とdefaultdict(list)版が同じくらいの処理速度になる
idの種類が増える毎にdefaultdict(list)版の方が速くなる、defaultdictの方が優れているね、分かりやすいし
Ruby版はどのくらい速いのかな?
>>> l=[[f'id{i}', 'hoge'] for i in range(5)]*10000
>>> with get_time():
d = {id:[i[1] for i in l if i[0]==id] for id in dict(l).keys()}

0.014081239700317383
>>> with get_time():
d = defaultdict(list)
for k,v in l: d[k].append(v)

0.014064788818359375
>>>
>>> l=[[f'id{i}', 'hoge'] for i in range(50)]*10000
>>> with get_time():
d = {id:[i[1] for i in l if i[0]==id] for id in dict(l).keys()}

1.0660841464996338
>>> with get_time():
d = defaultdict(list)
for k,v in l: d[k].append(v)

0.14391684532165527
>>>


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

2318日前に更新/231 KB
担当:undef