[過去ログ] Pythonのお勉強 Part67 (1002レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
173: デフォルトの名無しさん (JP 0H71-4pLq) [] 2022/06/06(月) 12:50:56.61 ID:m98Jb+yzH(1/4) AAS
map(int, float_no_list)みたいなときしか使わないな
この場合は、
[*map(int, float_no_list)]のほうが、
[int(v) for v in float_no_list]のより短いから使うだけ
打つ量を減らしたいだけで読みやすさで選んでないな
Jupyter上で試行錯誤が多いから。あとでちゃんとしたコードにするときに読みやすさは考える
174(1): デフォルトの名無しさん (JP 0H71-4pLq) [] 2022/06/06(月) 13:00:44.68 ID:m98Jb+yzH(2/4) AAS
>>155
ちなみに元の例に戻ると、filterを使えと書いてあるのだから、
len(filter(lambda x: x>n, ln))
かね。filter後にわざわざmapして1にしてsumする意味が感じられない。
mapで1にするなら、sum(map(lambda x: 1 if x > n else 0, ln))かな。
こっちは応用が効く場合がある(else -1にすればnより大きい個数とn以下の個数の差が求められるとか)
他にはsum(map(lambda x: int(x > n), ln))とかもあるけど技巧的だね
186: デフォルトの名無しさん (JP 0H71-4pLq) [] 2022/06/06(月) 16:39:39.60 ID:m98Jb+yzH(3/4) AAS
sumレベルだと、reduceする意味ないよな、長くなるだけで
functools.reduce(lambda a, x: a + int(x > n), ln) とは書けるが
もっと特殊な集計をしたいのならreduceは有り得そうな気がするが
187: デフォルトの名無しさん (JP 0H71-4pLq) [] 2022/06/06(月) 16:43:09.43 ID:m98Jb+yzH(4/4) AAS
sum(map(lambda x: x > n, In))
は、
sum(x > n for x in ln)
にもできるね。このforはfor「文」ではないしね
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.536s*