Python 3 で数学を。

Python 3 とライブラリで数学の問題を解いていきます。統計学や機械学習はときどき。

数列。総和。 Σ (シグマ) の計算。 (Python 3: sum(), リス内包表記、SymPy: latex())

使用する数式

 \sum_{k=10}^{11} 1

 \sum_{k=1}^{5} k

 \sum_{k=101}^{105} \left(k - 100\right)

上の数式は以下で作成 (SymPy: latex())

>>> import sympy as sym
>>> k = sym.Symbol('k')
>>> print(sym.latex(sym.Sum(1, (k, 10, 11))))
\sum_{k=10}^{11} 1
>>> print(sym.latex(sym.Sum(k, (k, 1, 5))))
\sum_{k=1}^{5} k
>>> print(sym.latex(sym.Sum(k - 100, (k, 101, 105))))
\sum_{k=101}^{105} \left(k - 100\right)

使用するライブラリ

なし

Python 3 コード

sigma3.py

#!/usr/bin/env python3


"""(docstring)
"""


def sigma3():
    """(docstring)
    """
    # Σ (シグマ) の計算は、SymPy 等のライブラリを使用したり、
    # for 文 や、その他の方法でも可能だが、ここでは sum() とリスト内包表記で行う。

    print('解答:\n')

    res1 = sum([i-i+1 for i in range(10, 12)])
    # or
    # res1 = sum([i-i+1 for i in range(1, 3)])
    # or
    # res1 = sum([1, 1])
    print(res1)

    res2 = sum(i for i in range(1, 6))
    print(res2)

    res3 = sum([i-100 for i in range(101, 106)])
    print(res3)


if __name__ == '__main__':
    sigma3()

出力

$ python3 sigma3.py
解答:

2
15
15

参考文献 (数式を参考)

関連過去記事

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com

py3math.hatenablog.com