2011-12-03 4 views
53

저는 수학 초보예요. 이제는 파이썬 데이터 유형에 대해 자세히 살펴 보겠습니다. 복소수 사용법을 이해할 수 없습니다. 파이썬에서 복잡한 숫자의 사용 예를 알려주세요.파이썬에서 복잡한 숫자 사용

+0

, 당신은 당신이 수학 표기법으로 수행 할 작업을 쓸 수 있습니다 :복잡한 숫자를 처리하는 더 많은 기능을 가지고? – Mark

+7

나는 이것이 닫혔어야한다고 생각하지 않는다. 나는 또한 파이썬이 수학, 통계, R 등에 공통적으로 사용되는보다 직관적 인 'i'구문보다 엔지니어링에서 흔히 사용되는 'j'라는 가상 구문을 사용한다는 것을 혼란스럽게 생각했다. – Mittenchops

+0

Python의 합법적 인 docbug는 'help (complex)'가 예를 보여주지 않는다는 것을 보여줍니다. '수입 십진법; help (decimal)' – smci

답변

105

파이썬, 당신이 상상하기 위해 다수 후 'J'또는 'J'를 넣을 수 끝에 오류 메시지를 포함 자명이어야하면 너무 복잡한 리터럴을 쉽게 작성할 수 있습니다.

>>> 1j 
1j 
>>> 1J 
1j 
>>> 1j * 1j 
(-1+0j) 

'j'접미사는 전기 공학에서 비롯되며 'i'변수는 일반적으로 전류에 사용됩니다. (Reasoning found here.)

The type of a complex number is 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) 

당신은 당신이 수학에 새로운 말하는 것처럼

>>> import cmath 
>>> cmath.sin(2 + 3j) 
(9.15449914691143-4.168906959966565j) 
+4

'i'는 수학자, 물리학 자 및 거의 모든 다른 과학자들에 의해서도 사용됩니다. 그다지 혼란스럽지 않으면 '긍정'제곱근을 나타내는 데 'i'를 사용하고, 'j'는 '음수'제곱근을 사용합니다. 따라서 i == -j. FYJ ... – jvriesem

11

complex numbers 대한 다음 예

>>> x=complex(1,2) 
>>> print x 
(1+2j) 
>>> y=complex(3,4) 
>>> print y 
(3+4j) 
>>> z=x+y 
>>> print x 
(1+2j) 
>>> print z 
(4+6j) 
>>> z=x*y 
>>> print z 
(-5+10j) 
>>> z=x/y 
>>> print z 
(0.44+0.08j) 
>>> print x.conjugate() 
(1-2j) 
>>> print x.imag 
2.0 
>>> print x.real 
1.0 
>>> print x>y 

Traceback (most recent call last): 
    File "<pyshell#149>", line 1, in <module> 
    print x>y 
TypeError: no ordering relation is defined for complex numbers 
>>> print x==y 
False 
>>> 
관련 문제