>  기사  >  백엔드 개발  >  Python 기본 학습 논리 연산자, 멤버 연산자, 연산자 우선 순위

Python 기본 학습 논리 연산자, 멤버 연산자, 연산자 우선 순위

little bottle
little bottle원래의
2019-04-27 15:03:193988검색

이전 두 기사를 연결하여 이번 기사에서는 Python의 논리 연산자, 멤버 연산자 및 연산자 우선 순위에 대한 기본 학습에 대해 계속 설명합니다. 관심 있는 친구는 배울 수 있습니다.

논리 연산자

Python 언어는 논리 연산자를 지원합니다. 다음은 변수 a가 10이고 b가 20이라고 가정합니다.

Operator 논리 표현식 Description Instance
and x 그리고 y Boolean AND - x가 False이면 x와 y는 False를 반환하고, 그렇지 않으면 계산된 y 값을 반환합니다. (a 및 b)는 20을 반환합니다.
or x 또는 y Boolean "or" - x가 True이면 True를 반환하고, 그렇지 않으면 계산된 y 값을 반환합니다. (a 또는 b)는 10을 반환합니다.
not not x 부울 "not" - x가 True인 경우 False를 반환합니다. x가 False이면 True를 반환합니다. not(a and b)는 False를 반환합니다

위 예제의 출력 결과:

#!/usr/bin/python3
a = 10
b = 20
if ( a and b ):
   print ("1 - 变量 a 和 b 都为 true")
else:
   print ("1 - 变量 a 和 b 有一个不为 true")
if ( a or b ):
   print ("2 - 变量 a 和 b 都为 true,或其中一个变量为 true")
else:
   print ("2 - 变量 a 和 b 都不为 true")
# 修改变量 a 的值
a = 0
if ( a and b ):
   print ("3 - 变量 a 和 b 都为 true")
else:
   print ("3 - 变量 a 和 b 有一个不为 true")
if ( a or b ):
   print ("4 - 变量 a 和 b 都为 true,或其中一个变量为 true")
else:
   print ("4 - 变量 a 和 b 都不为 true")
if not( a and b ):
   print ("5 - 变量 a 和 b 都为 false,或其中一个变量为 false")
else:
   print ("5 - 变量 a 和 b 都为 true")

위 예제의 출력 결과:

1 - 变量 a 和 b 都为 true
2 - 变量 a 和 b 都为 true,或其中一个变量为 true
3 - 变量 a 和 b 有一个不为 true
4 - 变量 a 和 b 都为 true,或其中一个变量为 true
5 - 变量 a 和 b 都为 false,或其中一个变量为 false

Member 연산자

위 연산자 중 일부 외에도 Python은 또한 멤버 작업 기호를 지원하는 경우 테스트 인스턴스에는 문자열, 목록 또는 튜플을 포함한 일련의 멤버가 포함됩니다.

Operator Description Instance
in 값이 지정된 시퀀스에서 발견되면 True를 반환하고, 그렇지 않으면 False를 반환합니다. x는 y 시퀀스에 있으며, x가 y 시퀀스에 있으면 True를 반환합니다.
not in 지정된 시퀀스에서 값을 찾을 수 없으면 True를 반환하고, 그렇지 않으면 False를 반환합니다. x는 y 시퀀스에 없으며, x가 y 시퀀스에 없으면 True를 반환합니다.

다음 예는 Python의 모든 멤버 연산자의 작동을 보여줍니다.

#!/usr/bin/python3
a = 10
b = 20
list = [1, 2, 3, 4, 5 ];
if ( a in list ):
   print ("1 - 变量 a 在给定的列表中 list 中")
else:
   print ("1 - 变量 a 不在给定的列表中 list 中")
if ( b not in list ):
   print ("2 - 变量 b 不在给定的列表中 list 中")
else:
   print ("2 - 变量 b 在给定的列表中 list 中")
# 修改变量 a 的值
a = 2
if ( a in list ):
   print ("3 - 变量 a 在给定的列表中 list 中")
else:
   print ("3 - 变量 a 不在给定的列表中 list 中")

위 예의 출력 결과:

1 - 变量 a 不在给定的列表中 list 中
2 - 变量 b 不在给定的列表中 list 中
3 - 变量 a 在给定的列表中 list 中

항등 연산자는 두 객체의 저장 단위를 비교하는 데 사용됩니다

is not 이 예에서는 Python의 모든 항등 연산자의 작동을 보여줍니다.
연산자 설명 Example
is is는 두 식별자가 객체에서 참조되는지 확인하는 것입니다 x는 y입니다. id(x)가 id(y)와 같으면 is는 다음을 반환합니다. 결과 1
is not is not은 두 식별자가 서로 다른 객체를 참조하는지 확인하는 데 사용됩니다. id(x)가 id(y)와 같지 않으면 이 반환됩니다. 다음 결과 1
#!/usr/bin/python3
a = 20
b = 20
if ( a is b ):
  print ("1 - a 和 b 有相同的标识")
else:
   print ("1 - a 和 b 没有相同的标识")
if ( id(a) == id(b) ):
   print ("2 - a 和 b 有相同的标识")
else:
  print ("2 - a 和 b 没有相同的标识")
# 修改变量 b 的值
b = 30
if ( a is b ):
   print ("3 - a 和 b 有相同的标识")
else:
   print ("3 - a 和 b 没有相同的标识")
if ( a is not b ):
   print ("4 - a 和 b 没有相同的标识")
else:
   print ("4 - a 和 b 有相同的标识")

위 예의 출력 결과:

1 - a 和 b 有相同的标识
2 - a 和 b 有相同的标识
3 - a 和 b 没有相同的标识
4 - a 和 b 没有相同的标识

Operator Priority

다음 표에는 모든 연산자가 가장 높은 것부터 가장 낮은 것까지 나열되어 있습니다. 우선순위:

연산 기호 **~ + -* / % //+ ->> 9a3dc311aeb4f99d1681c4ab2601a1be= < ; == !== %= /= //= -= += *= **=is는in입니다. not innot or and다음 예는 Python에서 모든 연산자 우선순위의 연산을 보여줍니다.
설명
인덱스(가장 높은 우선순위)
비트 뒤집기, 단항 더하기 및 빼기 기호(마지막 두 메서드의 이름은 + @ 및 -@ )
곱셈, 나눗셈, 모듈로 및 정수 나눗셈
덧셈 빼기
비교 연산자
동등 연산자
대입 연산자
신원 연산자
멤버 연산자
논리 연산자
#!/usr/bin/python3
a = 20
b = 10
c = 15
d = 5
e = 0
e = (a + b) * c / d       #( 30 * 15 ) / 5
print ("(a + b) * c / d 运算结果为:",  e)
e = ((a + b) * c) / d     # (30 * 15 ) / 5
print ("((a + b) * c) / d 运算结果为:",  e)
e = (a + b) * (c / d);    # (30) * (15/5)
print ("(a + b) * (c / d) 运算结果为:",  e)
e = a + (b * c) / d;      #  20 + (150/5)
print ("a + (b * c) / d 运算结果为:",  e)

위 예의 출력 결과:

(a + b) * c / d 运算结果为: 90.0
((a + b) * c) / d 运算结果为: 90.0
(a + b) * (c / d) 运算结果为: 90.0
a + (b * c) / d 运算结果为: 50.0

관련 튜토리얼:

Python 비디오 튜토리얼

위 내용은 Python 기본 학습 논리 연산자, 멤버 연산자, 연산자 우선 순위의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.