MIT python プログラミング コース、レクチャー 8 からのコードがあります。
def(x):
assert type(x) == int and x >= 0
answer = 0
s = str(x)
for c in s :
answer += int(c)
return answer
教授が言うように、このコードの複雑さは (x) の 10 を底とする対数です。彼は、(私が理解できたように)各ループ反復では、C は 10 桁(0 ~ 9)のいずれかになり、これにより基数 10 が対数になると説明しています。
しかし、私は理解できません。なぜそうなのですか?原因の複雑さは、C の選択のバリエーションではなく、実際にはリスト S の長さに依存します。
誰か説明できますか?