대부분의 다른 언어와 마찬가지로 Python에서 일반적으로 사용되는 연산자에는 산술 연산자, 비교 연산자, 논리 연산자도 포함되지만 몇 가지 차이점이 있는데 이에 대해 아래에서 자세히 소개합니다.
1. 산술 연산자
대부분의 다른 언어와 마찬가지로 Python에도 +(덧셈), -(뺄셈), *(곱셈), /(나누기), %(나머지) )가 있습니다. 이 다섯 가지 연산자 외에도 //(정수 나누기) 및 **(제곱 연산자 또는 지수 연산자)라는 두 가지 특수 연산자가 있습니다.
여기서 +, -, *의 기능은 계산기의 기능과 동일하므로 다시 설명하지 않겠습니다.
% 연산자는 부동 소수점 숫자에도 유효합니다. 예:
>>> 3.75 % 0.5 0.25 >>> 3.75 % 2 1.75 >>>
** 연산자는 거듭제곱(지수) 연산을 수행합니다. 예:
>>> 3**2 9 >>> 2**3 8 >>>
** 연산자와 양수 및 음수는 주의해야 합니다. 기호(+, -), **는 왼쪽 기호보다 우선순위가 높고 오른쪽 기호보다 우선순위가 낮습니다. 또는 간단히 ** 연산자가 더하기 및 빼기 기호보다 우선순위가 더 높다고 생각할 수도 있습니다. 왜냐하면 더하기 및 빼기 기호가 오른쪽에 있으면 두 기호가 함께 있고 더하기 및 빼기 기호는 서로 일치할 수 없기 때문입니다. 제거됨. 예를 들면 다음과 같습니다.
>>> -3**2 -9 >>> 3**-2 0.1111111111111111 >>>
강조하고 구별해야 할 것은 두 개의 나눗셈 연산자 / 및 //입니다. 파이썬 2.7에서 /는 두 정수의 나눗셈을 위한 정수 나눗셈입니다. 계산 결과는 정수 부분만 남고 소수 부분은 사라졌습니다. 예:
>>> 3/2 1 >>>
일반적인 나눗셈을 수행하려면 다음과 같이 하십시오. 결과가 유지됩니다. 의 소수 부분은 부동 소수점 숫자로 연산할 수 있습니다. 예:
>>> 3.0/2 1.5 >>> 3/2.0 1.5 >>> 3/2. 1.5 >>> 3.0/2.0 1.5 >>>
Python 3에서는 /가 변경되었습니다. 정수 나누기인지 부동 소수점 나누기인지 부동 소수점 나누기가 수행됩니다. 계산 결과는 소수 부분을 유지할 수 있습니다.
동시에 Python 2에서 계산 결과의 소수 부분을 유지하는 또 다른 방법은 프로그램 앞에 문장 from __feture__ import Division을 추가하고 명령문을 실행하는 것입니다(명령문에서 __는 두 개의 밑줄입니다). 예를 들어 :
>>> from __future__ import division >>> 3/2 1.5 >>> 5/4 1.25 >>>
이때의 나눗셈 연산은 이미 Python 3의 나눗셈 연산과 일치합니다.
파이썬에서는 // 이 정수 나누기 연산자도 제공되며, 부동 소수점 숫자에 대한 정수 나누기도 수행합니다(예:
>>> 3//2 1 >>> 3.0//2.0 1.0 >>> 5//2.0 2.0 >>>
2 및 기타 대부분). 다른 언어와 마찬가지로 Python의 비교 연산자에는 <, <=, >, >=, ==, !=가 포함됩니다. 비교 연산자는 표현식 값이 true인지 false인지에 따라 True 또는 False라는 부울 값을 반환합니다. 예: >>> 3 < 4
True
>>> 3 > 4
False
>>> 3 == 4
False
>>> 3 != 4
True
>>>
3. 논리 연산자
논리 연산자는 우리가 흔히 and, or, not이라고 부르는 것으로, 파이썬에서는 각각 and, or, not로 표시됩니다. 논리 연산자를 사용하여 임의의 표현식을 서로 연결하고 부울 값을 얻습니다. 예:
>>> 3 < 4 and 3 > 4 False >>> 3 < 4 or 3 == 4 True >>> not 3 < 4 False >>>
논리 연산자를 사용할 때 주의해야 할 가장 중요한 점은
단락 논리(또는 게으른 평가)입니다. 즉, 왼쪽이 이미 결정된 경우 논리 연산은 왼쪽에서 오른쪽으로 수행됩니다. 결과적으로 오른쪽의 계산은 더 이상 수행되지 않습니다. 구체적인 표현식은 다음과 같습니다.
x와 y의 경우 x가 false이면 y를 실행하지 않고 즉시 x 값이 반환되고, x가 true이면 y 값이 반환됩니다.
For x 또는 y, x가 true이면 y를 실행하지 않고 즉시 x 값이 반환되고, x가 false이면 y 값이 반환됩니다.
예:
>>> a Traceback (most recent call last): File "<pyshell#21>", line 1, in <module> a NameError: name 'a' is not defined >>> 0 and a 0 >>> 0 or a Traceback (most recent call last): File "<pyshell#23>", line 1, in <module> 0 or a NameError: name 'a' is not defined >>> 6 and a Traceback (most recent call last): File "<pyshell#24>", line 1, in <module> 6 and a NameError: name 'a' is not defined >>> 6 or a 6 >>>
0과 a의 경우 0이 먼저 false로 판단되기 때문에(일반적으로 프로그래밍 언어에서는 0이 false, non-0이 true를 의미함) 이때 전체 결과가 false라고 판단할 수 있으므로 0은 실행하지 않고 직접 반환되므로 오류가 보고되지 않습니다.
0 또는 a에 대해 먼저 0을 false로 판단합니다. 이때 전체 결과가 참인지 거짓인지 판단할 수 없으므로 계속해서 a를 실행하므로 오류가 보고됩니다.
6과 a의 경우 먼저 6이 참인지 판단해야 합니다. 이때는 전체 결과가 참인지 거짓인지 판단할 수 없으므로 계속해서 a를 실행하게 되므로 오류가 보고됩니다.
6의 경우 또는 6이 먼저 참이라고 판단되기 때문에 전체 결과가 참이라고 이미 판단할 수 있으므로 a를 실행하지 않고 바로 6이 반환되므로 오류가 보고되지 않습니다.
연산자 우선순위를 요약해 보겠습니다. 아래 그림을 참조하세요.
추천 학습:Python 비디오 튜토리얼
위 내용은 파이썬에서 일반적으로 사용되는 연산자는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!