Pythonで再帰

Pythonっていわゆるfor文ってないんですよね。
いや、ありはするんですけど、
あれはC系の言語だとforeachとかfor in文にあたるものですから。
カウントとかするには他にごにょごにょしなければならない。


まあ、ループしたければ再帰でしょ、常識的に考えて、ということで。
今日は再帰

def loop(func, x, count):
 if count == 0:
   return x
 else:
  return x + loop(func, func(x), (count - 1))


def sum(x):
    return x + 1

loop(sum, 0, 10)
55

そういえばPythonはx++みたいなインクリメントも無いんですよね。
もう少し抽象化してもいいですが今日は眠いのでこの辺で。