티스토리 뷰

언어/Python

Python 논리 연산자 not

★ ☆ 2020. 12. 30. 20:15

Python의 논리 연산자는 C언어와 비슷하지만 차이점이 있다.

 

python은 "!"를 not으로 인식하지 않는다. Python은 not을 "not"이라는 단어로 사용한다.

 

condition1 = TRUE
condition2 = FALSE
condition3 = not condition1

print(condition1) # TRUE
print(condition2) # FALSE

print(not condition1) # FALSE
print(condition3) # FALSE

print(condition1 and condtion2) # FALSE

 

c.f. ~(tilde) operator는 bit연산에서 각 digit을 0과 1을 뒤집은 결과 값을 의미한다.

     number = 2 라면, number는 비트로는 10이다.

     ~number는 개념적으로는 01이 되어야 한다.

 

    그러나, 프로그래밍 언어는 2라는 숫자를 10으로 저장하고 있는 것이 아니라 자료형의 크기 만큼 저장하고 있다.

    예를 들어, 6자리가 자료형의 단위였다면

    2는 000010이 된다. -2는 111101이 된다. 그러므로 01이 아니라 다른 수가 된다.

 

    python에서 ~x는 (-x)-1이 된다.

    stackoverflow.com/questions/3462227/weird-output-for-bitwise-not

'언어 > Python' 카테고리의 다른 글

List Comprehensions in Python  (0) 2021.01.01
Python sublist, slicing  (0) 2020.12.31
Access and Print a list of lists  (0) 2020.12.31
print문 안에 if 조건을 넣을 수 있다.  (0) 2020.12.30
Docstring  (0) 2020.12.28
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함