pythonのリスト内包表記、関数型、手続き,numpy
pythonで1から100までの自然数うち、3の倍数のみを10倍して合計を求める。
手続き
res = 0
for n in range(1,101):
if n%3==0:
res += n*10
関数型
res = sum(map(lambda n : n * 10, filter( lambda n : n%3==0, range(1,101)))
リスト内包表記
res = sum([n * 10 for n in range(1,101) if n%3==3])
numpy
import numpy as np
N=np.arange(1,101)
res = np.sum(N[N%3==0]*10)
関数型と二項演算子
res = sum(map(lambda n : n * 10 if n%3==0 else 0, range(1,101)))
関数型(ハードコア版)
0 件のコメント:
コメントを投稿
登録 コメントの投稿 [Atom]
<< ホーム