Posts [부스트캠프 AI Tech / Day2] Python 변수
Post
Cancel

[부스트캠프 AI Tech / Day2] Python 변수

[DAY 2] Variables


Variables(변수)

  • 데이터(값)을 저장하기 위한 메모리 공간
  • 변수는 메모리 주소를 가지고 있고, 메모리 주소에 변수에 저장하는 값이 할당됨
  • 선언되는 순간 메모리 특정영역의 물리적인 공간에 할당

변수 이름 작명법
▪ 알파벳, 숫자, underscore(_)로 선언가능
▪ 변수명은 의미있는 단어로 표기하기
▪ 변수명은 대소문자가 구분하기
▪ 특별한 의미가 있는 예약어는 쓰지않기(for, if, in, …)


Basic Operation

1. 기본자료형(primitive data type)

  • 데이터 타입(자료형): 파이썬이 처리할 수 있는 데이터 유형
  • 자료형의 종류
    • 수치자료형
      • 정수형: integer(32bit)
      • 실수형: float(64bit)
    • 문자형(문자열): string
    • 논리자료형: boolean
  • 각각의 자료형이 차지하는 공간이 다름
  • Dynamic Typing: 코드 실행시점에 데이터의 Type을 결정하는 방법
    • 실행시점에 인터프리터가 변수형 확인
      • 실행하는 시점에 메모리를 어떻게 할당해야할지 결정하므로 타 언어보다 느림
    • 변수형을 명시하지 않아도 되기 때문에 사용하기 용이함
    • 다른 대부분의 언어들/컴파일러 언어들은 이를 지원하지 않음
      • (다른 언어들은)항상 변수형을 명시해야 함
  • 변수선언 및 타입확인
    • type(var): 데이터의 타입을 알 수 있음
    • a = 3: integer
    • a = 3.0: float
    • a = "3": string
    • a = false: boolean

2. 연산자와피연산자

  • 연산자: + , -, * , / 같은 기호들
  • 피연산자: 연산자에 의해 계산이 되는 숫자들
  • 특징
    • 수식에서 연산자의 역할은 수학에서 연산자와 동일
    • 연산의 순서는 수학에서 연산순서와 같음
    • 문자간에도 + 연산이 가능(= concatenate)
  • 연산자 사용
    • **: 제곱승 계산 연산자
      • 5 ** 3 (= 125)
    • /: 나눗셈을 구하는 연산자
      • int ➡ float로 자동 변환
      • 10 / 2 (= 5.0)
    • %: 나머지를 구하는 연산자
    • 증가/감소 연산
      • a = a + 1 = a += 1
      • a = a - 1 = a -= 1
      • a++은 사용할 수 없음!
      • 변수는 좌변에 있을 때와 우변에 있을 때의 의미가 다름
        • 좌변의 경우, 저장되는공간
        • 우변의 경우, 메모리에서 읽어오는 값을 의미

3. 데이터 형변환

  • 형변환하고 나서, 다시 변수에 담아주어야 실제 값이 바뀌게 됨

    1
    2
    3
    4
    5
    6
    
    >>> a = 5
    >>> type(5)       # <class 'int'>
    >>> float(a)      # 5.0
    >>> a             # 5
    >>> a = float(a)  # 5.0
    >>> a             # 5.0
    
  • 실수형 ➡ 정수형으로 형변환 시 소수점 이하는 내림
  • 문자열과 숫자 사이에도 변환 가능 (계산은 불가능)
    • 문자와 숫자를 더하려고 시도하면 concatenate 오류 발생
    • 문자와 문자, 숫자와 숫자는 서로 더할 수 있음
    1
    2
    3
    4
    5
    6
    7
    8
    
    >>> a = '76.3'
    >>> b = float(a)  # a를 실수형으로 형 변환 후 b에 할당
    >>> print (a)     # 76.3
    >>> print (b)     # 76.3
    >>> print (a + b) # 오류
      # Traceback (most recent call last):
      # File "<stdin>", line 1, in <module>
      # TypeError: cannot concatenate 'str' and 'float' objects
    
This post is licensed under CC BY 4.0 by the author.