Python_비교연산자

장해수·2023년 6월 6일
  1. 비교 연산자
    1) 숫자 비교
    (1) num1 > num2 : 크다
    (2) num1 < num2 : 작다
    (3) num1 >= num2 : 이상
    (4) num1 <= num2 : 이하
    (5) num1 == num2 : 같다
    (6) num1 != num2 : 같지 않다
  • 연산의 결과는 True / False (class type: bool)
  • 예시
num1 = 10; num2 = 5
result = num1 > num2
print('num1 > num2: {}'.format(result))
num1 > num2: True

2) 문자 비교
(1) 아스키 코드 활용 문자 비교

  • 코드
char1 = 'A' # 65
char2 = 'S' # 83

print('\'{}\' > \'{}\' : {}'.format(char1, char2, (char1 > char2)))
print('\'{}\' < \'{}\' : {}'.format(char1, char2, (char1 < char2)))
print('\'{}\' >= \'{}\' : {}'.format(char1, char2, (char1 >= char2)))
print('\'{}\' < \'{}\' : {}'.format(char1, char2, (char1 <= char2)))
print('\'{}\' == \'{}\' : {}'.format(char1, char2, (char1 == char2)))
print('\'{}\' != \'{}\' : {}'.format(char1, char2, (char1 != char2)))
  • 결과
'A' > 'S' : False
'A' < 'S' : True
'A' >= 'S' : False
'A' < 'S' : True
'A' == 'S' : False
'A' != 'S' : True

(2) 문자와 아스키 코드 변환

  • 문자 > 숫자(10진수): ord()
print('\'A\' -> {}'.format(ord('A')))
print('\'S\' -> {}'.format(ord('S')))
'A' -> 65
'S' -> 83
  • 숫자 > 문자: chr()
print('65 -> {}'.format(chr(65)))
print('83 -> {}'.format(chr(83)))
65 -> A
83 -> S

(3) 문자열 비교: 문자열 자체 비교

  • '같다 / 같지 않다'만 비교 가능
str1 = 'Jeno'
str2 = 'jeno'

print('\'{}\' == \'{}\' : {}'.format(str1, str2, (str1 == str2)))
print('\'{}\' != \'{}\' : {}'.format(str1, str2, (str1 != str2)))
'Jeno' == 'jeno' : False
'Jeno' != 'jeno' : True
  1. 실습
    예제 1) 숫자 두 개를 입력한 후 비교 연산 결과를 출력하는 코드를 작성하자.
  • 코드
userInputNumber1 = int(input('첫번째 숫자 입력: '))
userInputNumber2 = int(input('두번째 숫자 입력: '))

print('{} > {}: {}'.format(userInputNumber1, userInputNumber2, (userInputNumber1 > userInputNumber2)))
print('{} >= {}: {}'.format(userInputNumber1, userInputNumber2, (userInputNumber1 >= userInputNumber2)))
print('{} < {}: {}'.format(userInputNumber1, userInputNumber2, (userInputNumber1 < userInputNumber2)))
print('{} <= {}: {}'.format(userInputNumber1, userInputNumber2, (userInputNumber1 <= userInputNumber2)))
print('{} == {}: {}'.format(userInputNumber1, userInputNumber2, (userInputNumber1 == userInputNumber2)))
print('{} != {}: {}'.format(userInputNumber1, userInputNumber2, (userInputNumber1 != userInputNumber2)))
  • 결과
첫번째 숫자 입력: 10
두번째 숫자 입력: 5
10 > 5: True
10 >= 5: True
10 < 5: False
10 <= 5: False
10 == 5: False
10 != 5: True

예제 2) 자동차의 전장과 전폭을 입력하면 자동차 기계 세차 가능여부를 출력하는 코드를 작성해보자. (최대 전장 길이: 5200mm, 최대 전폭 길이: 1985mm)

  • 코드
maxLength = 5200
maxWidth = 1985
myCarLength = int(input('내 차 전장 길이: '))
myCarWidth = int(input('내 차 전폭 길이: '))

print('전장 가능 여부: {}'.format(maxLength >= myCarLength))
print('전폭 가능 여부: {}'.format(maxWidth >= myCarWidth))
  • 결과
내 차 전장 길이: 5200
내 차 전폭 길이: 1900
전장 가능 여부: True
전폭 가능 여부: True
내 차 전장 길이: 5300
내 차 전폭 길이: 1850
전장 가능 여부: False
전폭 가능 여부: True

예제 3) 알파벳을 입력하면 아스키 코드를 출력하는 코드를 작성하자.

userInputAlphabet = input('알파벳 입력: ')
print('{} -> {}'.format(userInputAlphabet, ord(userInputAlphabet)))
알파벳 입력: J
J -> 74

예제 4) 아스키 코드를 입력하면 문자를 출력하는 코드를 작성하자.

userInputASCII = int(input('아스키 코드 입력: '))
print('{} : {}'.format(userInputASCII, chr(userInputASCII)))
아스키 코드 입력: 77
77 : M
profile
데이터 진행시켜

0개의 댓글