茨の道も一歩から

インフラ構築からプログラミング(Python・JavaScript)までITに関するブログです。

91日目:Pythonプログラミング

Pythonプログラミングの講義25日目。

参考テキストがすべて終わりました。明日から自習かなぁ…。

【講義内容】

【ワンポイント】

timeit

import timeit

t = timeit.timeit('[print(i) for i in range(3)]', number=3)
print(t)

t1 = timeit.timeit(stmt='[print(i, end="") if i!=9 else print(i) for i in x]', setup='x=range(10)', number=10)
print(t1)

t2 = timeit.repeat('[print(i, end="") if i!=9 else print(i) for i in x]', 'x=range(10)', repeat=2, number=10)
print(t2)

y = range(5)
t3 = timeit.timeit('[print(i, end="") if i != len(y)-1 else print(i) for i in y]', globals=globals(), number=5)
print(t3)

再帰関数

階乗

from math import factorial

print(factorial(5))

def fact(n):
    if n == 1:
        return 1
    return n * fact(n-1)

while True:
    num = int(input('input number(x>0): '))
    if num <= 0:
        break
    print(fact(num))

再帰制限

import sys

print(sys.getrecursionlimit())
# 1000

sys.setrecursionlimit(10**9)
print(sys.getrecursionlimit())
# 1000000000

【今日の積み上げ】