【Perl,PHP】LLバトルロワイヤル4【Ruby,Python】at TECH【Perl,PHP】LLバトルロワイヤル4【Ruby,Python】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト417:デフォルトの名無しさん 09/03/02 21:16:02 >>412 {}.__setitem__(k, v) 418:デフォルトの名無しさん 09/03/02 21:16:44 >>412 >>414 hoge.__setitem__(key, value) 無理やりreduceで書くなら例えば reduce(lambda d, x: d.__setitem__(x, request[x]) or d, ['hoge','fuga'],{}) こんな書き方になると思うけど、Python使いはこの例を普通こんな風には書かない dict((k, request[k]) for k in ['hoge','fuga']) のほうがずっと素直で短く読みやすいからね 419:デフォルトの名無しさん 09/03/02 22:00:38 >>416 なるほど、キモいけど面白れー! 420:デフォルトの名無しさん 09/03/02 22:15:29 >>418 内包記法はうらやましい 421:341 09/03/02 22:30:41 なんか、このスレでも結構盛り上がったかな。ありがとうございます。 ちなみに元の言語であるPHPにも、forループしかないわけじゃなくて、むやみ やたらと沢山のarray関連関数がある。 http://jp2.php.net/manual/ja/book.array.php これを利用したら簡潔にならないかと思ったんだが、 array_intersect_key($request, array_flip(array('hoge', 'fuga'))); 関数名の長いせいもあって、どうも垢抜けないのう。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch