魔術師をめざして

魔術師を目指して、相場・数学・プログラム言語を研究しています。

pythonの内包表記②


以下をpythyonの内表記で計算してみた。
ただし対象は、iが偶数項のみとする。
1**2+2**2+3**2+4**2+5**2+...+1000**2


>>> a=([i**2 for i in range(1,1001) if i%2==0 ])
>>> sum(a)
167167000

汎用化:
sum([cal(i) for i in range(k,n+1)]if bool(i)])

↑このようにすると、かなり汎用的に使えるようだ。