데이터분석/첫째주

파이썬 Python : 변수와 자료형

핑크댕댕이 2023. 9. 14. 05:30
728x90

 

  변수     

데이터가 저장되어있는 메모리 공간이다.

변수가 메모리에 저장되고, 해당 변수에 접근하기 위해서는 메모리 주소하면 되지만, 손쉽지 않아서, 변수에 이름표(변수명)를 붙여서 접근 용이하게 사용한다.

 

 

변수 선언 및 초기화

【 변수명 = 변수 초기값 】

 

#【 파이썬 】- 변수 선언 및 초기화
num = 10
pi = 3.15
intro = '안녕하세요.'
on = True
  • = (할당 연산자) : 오른쪽에 있는 데이터를 왼쪽에 있는 변수에 할당해준다.
  • 변수는 정의할 때 반드시 '초기화'하도록 한다.
  • 변수는 주로 데이터를 재사용하기 위한 목적으로 사용한다.
  • 변수를 사용하여 프로그램을 보다 효율적으로 관리할 수 있다.

 

 

변수명 작명법

  • 영문, 숫자, 한글이 사용 가능하다.
  • 숫자는 첫글자로 사용 금지한다.
  • 특수문자 사용을 금지한다. 단, _(언더바)는 사용 가능하다.
  • 공백문자 사용을 금지한다.
  • 예약어(파이썬에서 이미 사용하고 있어 예약된 단어)는 사용 금지한다.
#【 파이썬 】- 예약어 보는 함수
import keyword
print(keyword.kwlist)

 

  • 영문 사용을 권장하며, 한글 사용은 권장하지 않는다.
  • 첫글자는 소문자로 사용을 권장한다.(클래스 이름의 첫글자를 대문자로 사용하기 때문에)
  • 데이터의 의미를 파악할 수 있는 명사를 사용하길 권장한다.
  • 카멜 표기법 또는 스네이크 표기법을 사용을 권장한다.

 

 

  자료형(Data type)     

#【 파이썬 】- 변수의 자료형을 보는 함수
print(type(변수명))
  • 효율적인 메모리 사용을 위해서 데이터를 정수형, 실수형, 문자(열)형, 논리형으로 구분한 것이다.
  • 데이터 타입에 따라서 메모리 크기를 결정한다.

 

파이썬은 변수 선언시 데이터에 따라서 알아서 자료형을 설정한다.

【 정수형, int 】

  • num = 10 / score =85
  • 정수는 메모리가 허용되는 한 무한 사용이 가능하다.

 

【 실수형, float 】

  • pi = 3.15 / height = 180.5
  • 실수는 대략 소수점 이하 17~18번째에서 데이터 손실이 일어나서 왜곡될 수 있다.

 

【 문자(열), str 】

  • intro = '안녕하세요.'
  • '(작은 따옴표) 또는 "(큰 따옴표)를 사용할 수 있다.
  • 파이썬은 문자(char)와 문자열(string)을 구분하지 않는다.

 

【 논리형, bool 】

  • on = True / off = False
  • 참과 거짓을 구분하기 위한 자료형

 

 

빈문자(empty string) vs 공백문자(space string)

  • 빈문자 : 비어있는 문자, 데이터 없음
  • 공백문자 : 공백 데이터가 있음

 

 

 

 자료형 변환(Type Casting)     

데이터 타입을 변환하는 것, 파이썬에서 제공하는 함수를 이용

 

문자(열)로 형변환 : 【  str( )  】

정수, 실수, 논리   ─변환─▶  문자(열)

#【 파이썬 】
num = 30
height = 169.3
on = True
print('num:', num, type(num))
print('height:', height, type(height))
print('on:', on, type(on))
print('연산(+) num+height:', num+height, type(num+height), '\n')

num = str(num) #num 변수를 문자(열)로 변환하여 재정의
height = str(height) #height 변수를 문자(열)로 변환하여 재정의
on = str(on) #on 변수를 문자(열)로 변환하여 재정의
print('num:', num, type(num))
print('height:', height, type(height))
print('on:', on, type(on))
print('연산(+):', num+height+on, type(num+height+on))
-- 출력 --

num: 30 <class 'int'="">
height: 169.3 <class 'float'="">
on: True <class 'bool'="">
연산(+) num+height: 199.3 <class 'float'="">

num: 30 <class 'str'="">
height: 169.3 <class 'str'="">
on: True <class 'str'="">
연산(+): 30169.3True <class 'str'="">

 

 

정수로 형변환 : 【 int( ) 】

실수, 문자(열), 논리   ─변환─▶  정수

  • 논리형 : True -> 1, False -> 0
#【 파이썬 】
height = 169.3
on = True
string = '60'
print('height:', height, type(height))
print('on:', on, type(on))
print('string:', string, type(string), '\n')

height = int(height) #height 변수를 정수로 변환하여 재정의
on = int(on) #on 변수를 정수로 변환하여 재정의
string = int(string) #string 변수를 정수로 변환하여 재정의

print('height:', height, type(height))
print('on:', on, type(on))
print('string:', string, type(string))
print('연산(+):', height+on+string, type(height+on+string))
 -- 출력 --

height: 169.3 <class 'float'="">
on: True <class 'bool'="">
string: 60 <class 'str'="">

height: 169 <class 'int'="">
on: 1 <class 'int'="">
string: 60 <class 'int'="">
연산(+): 230 <class 'int'="">

 

 

실수로 형변환 : 【 float( ) 】

정수, 문자(열), 논리   ─변환─▶  실수

 

#【 파이썬 】
num = 30
height = 169.3
on = True
string = '60'
print('height:', height, type(height))
print('on:', on, type(on))
print('off:', off, type(off))
print('string:', string, type(string), '\n')

num = float(num) #num 변수를 실수로 변환하여 재정의
on = float(on) #on 변수를 실수로 변환하여 재정의
off = float(off) #off 변수를 실수로 변환하여 재정의
string = float(string) #string 변수를 실수로 변환하여 재정의
print('num:', num, type(num))
print('height:', height, type(height))
print('on:', on, type(on))
print('off:', off, type(off))
print('string:', string, type(string))
print('연산(+):', num+height+on+off+string, type(num+height+on+off+string))
-- 출력 --

num: 30 <class 'int'="">
height: 169.3 <class 'float'="">
on: True <class 'bool'="">
off: False <class 'bool'="">
string: 60 <class 'str'="">

num: 30.0 <class 'float'="">
height: 169.3 <class 'float'="">
on: 1.0 <class 'float'="">
off: 0.0 <class 'float'="">
string: 60.0 <class 'float'="">
연산(+): 260.3 <class 'float'="">

 

 

논리로 형변환 : 【 bool( ) 】

빈문자, 공백문자, 문자(열), 정수, 실수   ─변환─▶  논리

  • 공백문자 -> True, 빈문자 -> False
  • 데이터가 있으면 -> True, 데이터가 없으면 -> False
  • 0 이외의 숫자 -> Ture, 숫자 0이면 -> False

 

#【 파이썬 】
empty = ''
space = ' '
string = '데이터'
num1 = 0
num2 = 1
num3 = 100
height = 169.3
zero = 0.0
print('empty :', empty, type(empty))
print('space :', space, type(space))
print('string :', string, type(string))
print('num1 :', num1, type(num1))
print('num2 :', num2, type(num2))
print('num3 :', num3, type(num3))
print('height :', height, type(height))
print('zero :', zero, type(zero),'\n')

empty = bool(empty)
space = bool(space)
string = bool(string)
num1 = bool(num1)
num2 = bool(num2)
num3 = bool(num3)
height = bool(height)
zero = bool(zero)
print('empty :', empty, type(empty))
print('space :', space, type(space))
print('string :', string, type(string))
print('num1 :', num1, type(num1))
print('num2 :', num2, type(num2))
print('num3 :', num3, type(num3))
print('height :', height, type(height))
print('zero :', zero, type(zero))
-- 출력 --

empty : <class 'str'="">
space : <class 'str'="">
string : 데이터 <class 'str'="">
num1 : 0 <class 'int'="">
num2 : 1 <class 'int'="">
num3 : 100 <class 'int'="">
height : 169.3 <class 'float'="">
zero : 0.0 <class 'float'="">

empty : False <class 'bool'="">
space : True <class 'bool'="">
string : True <class 'bool'="">
num1 : False <class 'bool'="">
num2 : True <class 'bool'="">
num3 : True <class 'bool'="">
height : True <class 'bool'="">
zero : False <class 'bool'="">



 

 

반응형