複素数は Python でサポートされているデータ型ですか? もしそうなら、どのように使用しますか?
ベストアンサー1
Python では、数値の後に「j」または「J」を付けて虚数にすることができるため、複雑なリテラルを簡単に記述できます。
>>> 1j
1j
>>> 1J
1j
>>> 1j * 1j
(-1+0j)
「j」という接尾辞は電気工学に由来しており、変数「i」は通常電流を表すために使用されます。理由はここにあります。)
複素数の型はcomplex
必要に応じて、型をコンストラクターとして使用することもできます。
>>> complex(2,3)
(2+3j)
複素数にはいくつかの組み込みアクセサがあります。
>>> z = 2+3j
>>> z.real
2.0
>>> z.imag
3.0
>>> z.conjugate()
(2-3j)
いくつかの組み込み関数は複素数をサポートします:
>>> abs(3 + 4j)
5.0
>>> pow(3 + 4j, 2)
(-7+24j)
標準モジュールcmath
複素数を扱う関数がさらにあります:
>>> import cmath
>>> cmath.sin(2 + 3j)
(9.15449914691143-4.168906959966565j)