도슐랭스타

Python - input()함수와 연산자 본문

Python

Python - input()함수와 연산자

도도.__. 2023. 5. 30. 23:53

input() 함수

  • 사용자에게 데이터를 입력받을 때 사용하는 함수
  • 무조건 '문자열'로 저장된다 ( 다른 자료형으로 저장하고 싶으면 자료형 변환(= type() 함수)을 해야함! )
data = input("당신의 이름은? ") #이름을 입력하면 data에 문자열로 저장됨
num = int(input("숫자를 입력하세요. ")) #입력한 숫자가 num에 정수형으로 저장됨

연산자의 종류

  • 산술 연산자 : 산술 연산을 한다 (+, -, *, /, //, %, **)
  • 할당 연산자 : 오른쪽 값을 연산하여 왼쪽에 대입한다 (=, +=, -=, *=. /=, //=, %=, **=)
  • 비교 연산자 : 크고 작음을 연산한다 (>, >=, <, <=, ==, !=)
  • 논리 연산자 : 참과 거짓을 판별한다 (and, or, not)

피연산자

  • 연산에 필요한 데이터, 연산의 대상  ex) sum = num1 + num2 에서 num1과 num2이 피연산자임

산술 연산자

  • 덧셈 " + "
    • 정수 + 실수 = 실수형(float)
    • 문자열 + 문자열 (가능)
    • 문자열 + 숫자 (불가능 => 에러 발생)
  • 뺄셈 " - "
    • 문자열은 뺄셈이 불가능! ( =>에러 발생 )
  • 곱셈 " * "
    • 문자열 * 양의 정수 = 곱한 숫자만큼 문자열 반복
    • 문자열 * ( 0 또는 음의 정수 ) = ' ' (에러가 발생하지는 않음)
print("Hi " * 3) #출력-> Hi Hi Hi 
print("Hello" * -1) #출력 -> ' '
  • 나눗셈 " / "
    • 문자열은 나눗셈 불가능! ( =>에러 발생 )
    • 나머지가 없어도 항상 결과는 '실수형'으로 나온다 
    • 0은 뭘로 나눠도 0
    • 0으로 나눌 수는 없다 ( =>에러 발생 )
  • 나눗셈 나머지 " % "
print(10%3) #출력-> 1
  • 나눗셈 몫 " // "
print(10//3) #출력-> 3
  • 거듭제곱 " ** "
print(2**3) #출력-> 8

할당 연산자

  • +=, -=, *=, /=, %=, //=, **= : 오른쪽에 있는 숫자를 왼쪽의 값과 계산해서 왼쪽에 넣는다
num = 10

num += 5
print(num) #출력-> 15

num -= 5
print(num) #출력-> 10

num *= 2
print(num) #출력-> 20

num /= 5
print(num) #출력-> 4.0

num %= 3
print(num) #출력-> 1.0

num = 10
num //= 3
print(num) #출력-> 3

num **= 2
print(num) #출력-> 9

비교 연산자

  • ==, !=, >, >=, <, <= : 크고 작음을 연산한다
num1 = 5
num2 = 10
print(num1 == num2) #출력->False / "=="은 같으면 True, 다르면 False

print(num1 != num2) #출력->True / "!="은 다르면 True, 같으면 False

논리 연산자

  • and 연산자( " & ", " and " ): 모두 True이면 True
    • 앞부분이 False이면 뒷부분 연산 안 하고 False 출력함 (※뒷부분이 에러가 발생하는 부분이라도 에러가 발생하지 않고 False라고 정상적으로 출력됨)
  • or 연산자( " | ", " or " ): 하나라도 True이면 True
    • 앞부분이 True이면 뒷부분 연산 안 하고 True 출력함 (※뒷부분이 에러가 발생하는 부분이라도 에러가 발생하지 않고 True라고 정상적으로 출력됨)
  • not 연산자( " not " ): 결과를 반대로 출력
#and 연산자 예시 (and 또는 & 쓰면 됨)
num1 = 1
num2 = 2
num3 = 3
print((num1<num2) and (num2<num3)) #true and true/ 출력->True
print((num1<num2) and (num2>num3)) #true and false/ 출력->False
print((num1>num2) and (num2>num3)) #false and false/ 출력->False

#or 연산자 예시 (or 또는 | 쓰면 됨)
num1 = 1
num2 = 2
num3 = 3
print((num1<num2) or (num2<num3)) #true and true/ 출력->True
print((num1<num2) and (num2>num3)) #true and false/ 출력->True
print((num1>num2) and (num2>num3)) #false and false/ 출력->False

#not 연산자 예시
num1 = True
num2 = False
print(not num1) #출력-> False
print(not num2) #출력-> True
print(not(2>3)) #출력-> True

도슐랭스타
★★☆☆☆ 생각보다 머리가 아프군..
and와 or 연산자를 처음봐서 그런지 생각보다 헷갈린다. 복습하면서 예제 문제를 꼭 풀어봐야겠다.

반응형

'Python' 카테고리의 다른 글

Python-list(리스트)  (0) 2023.07.01
Python - 조건문(if, else, elif)과 반복문(for, while)  (0) 2023.06.01
Python - 데이터의 종류와 print()함수  (0) 2023.05.27
Comments