연산자 | 우선순위 | 설명 | 결합순서 |
---|---|---|---|
+, - | 1 | 단항 연산자 | - |
** | 2 | 지수 연산자 | 왼쪽 <- 오른쪽 |
*,/,%,// | 3 | 곱하기,나누기,나머지,몫 | 왼쪽 -> 오른쪽 |
+, - | 4 | 더하기,빼기 | 왼쪽 -> 오른쪽 |
print 2 ** 3
print 5 % 2
print -5 % 2
8 1 1
print 3 + 5
print 3 + 5.0 # 정수 + 실수의 결과는 실수
8 8.0
print 5 / 2.0 # 정수 / 실수의 결과는 실수
print 5 / 2
2.5 2
a = 5 / 3
b = 5 % 3
print a, b
print divmod(5,3)
1 2 (1, 2)
print 5 / 3
print 5 // 3
1 1
print -7/4 # -7을 4로 나눈다
print -(7/4)
-2 -1
print 2 + 3 * 4
print (2 + 3) * 4
14 20
print 4 / 2 * 2
4
print 2 ** 3 ** 2
print (2 ** 3) ** 2
512 64
print 6 == 9
print 6 != 9
print 1 > 3
print 4 <= 5
a = 5
b = 10
print a < b
False True False True True
a = 5
b = 10
print 0 < a < b
True
a = 5
b = 10
print 0 < a and a < b
True
print 'abcd' > 'abd'
print (1, 2, 4) < (2, 1, 0)
print [1, 3, 2] == [1, 2, 3]
False True False
print 9999999999999999999999L < 'abc'
print {3:2} < [1,2,3] < (1,2,3)
True True
L = [1,2,3, 'abc', 'a', 'z', (1,2,3), [1,2,3], {1:2}, ['abc']]
L.sort()
print L
[1, 2, 3, {1: 2}, [1, 2, 3], ['abc'], 'a', 'abc', 'z', (1, 2, 3)]
x = [1,2,3]
y = [1,2,3]
z = y
print x == y
print x == z
print x is y
print x is z
print y is z
True True False False True
a = 20
b = 30
print a > 10 and b < 50
True
print True + 1
print False + 1
print False * 75
print True * 75
2 1 0 75
print bool(0) # 정수 0은 거짓
print bool(1)
print bool(100)
print bool(-100)
print
print bool(0.0) # 실수 0.0은 거짓
print bool(0.1)
False True True True False True
print bool('abc')
print bool('')
print
print bool([]) # 공 리스트는 거짓
print bool([1,2,3])
print
print bool(()) # 공 튜플은 거짓
print bool((1,2,3))
print
print bool({}) # 공 사전은 거짓
print bool({1:2})
print
print bool(None) # None 객체는 거짓
True False False True False True False True False
print 1 and 1
print 1 and 0
print 0 or 0
print 1 or 0
print
print [] or 1 # [] 거짓
print [] or () # [], () 거짓
print [] and 1 # [] 거짓이므로 1은 참조할 필요 없음
1 0 0 1 1 () []
print 1 and 2
print 1 or 2
print
print [[]] or 1 # [[]] 참으로 간주
print [{}] or 1 # [{}] 참으로 간주
print '' or 1 # 빈 문자열('')은 거짓
2 1 [[]] [{}] 1
print not(True)
print not(1 and 2)
print not('' or 1)
False False False
참고 문헌: 파이썬(열혈강의)(개정판 VER.2), 이강성, FreeLec, 2005년 8월 29일