본문 바로가기
Programming/Python

02. 자료형과 연산자

by goatlab 2021. 12. 8.
728x90
반응형
SMALL

자료형

 

  • _ : 단일 식별자
  • __ : 강한 식별자

 

메모리에 저장된 데이터는 다양한 표준 데이터 유형이 있다.

 

변수 (Variable)

 

변수는 메모리에 데이터를 저장하기 위한 공간을 가리키는 말이며, 컴퓨터와 프로그래밍 언어 사용자간의 약속이다. a라는 변수를 정의했을 때, 컴퓨터와 사용자가 인식하는 특정 데이터를 저장하고 있는 공간이고 그 공간의 이름을 a라고 한다. 그리고 변수는 일종의 닉네임으로, 실제 물리적인 메모리 주소공간을 가리킨다. 사용자는 변수의 이름으로 데이터를 인식하고, 컴퓨터는 변수의 주소로 데이터를 인식한다. 변수에 데이터를 저장할 때는 = (assignment operator)를 사용한다. assignment operator라고 부른다. a = 10을 예로 들었을 때, =을 기준으로 왼쪽을 lvalue라고 하며 실제 메모리 주소를 의미하고, =을 기준으로 오른쪽을 rvalue고 하며 실제 데이터 (또는 값)을 의미한다.

 

숫자 (Numbers)

 

number는 숫자 형태로 이루어진 자료형이다. 123 같은 정수, 12.34 같은 실수, 8진수나 16진수도 있다.  파이썬은 숫자의 표현 범위가 무한대이다. 숫자 데이터는 대부분의 연산을 그대로 지원한다 (사칙연산, 나머지 구하기, 몫 구하기, 거듭제곱). 

 

a = 1, b = 1.2
c = 5
d = 2

print(c ** d) # c를 d번 곱한 것 (c^d)
print(c // d) # c를 d로 나눈 몫
print(c % d)  # c를 d로 나눈 나머지

 

문자열 (String)

 

*문자열 데이터란, 문자 (character)의 나열을 의미한다. 파이썬에 다룰 수 있는 문자열의 크기도 제한이 없다. string은 글자의 Unicode 코드로 이루어진 불변한 순서있는 집합이다. "" (쌍따옴표), ''(작은따옴표) 모두 사용가능하다. "' 와 같이 혼용할 수 없다. 즉, ' 부터 ' 까지 또는 " 부터 " 까지 하나의 문자열이다. 컴퓨터는 문자를 encoding하여 숫자로 표현한다. 알려진 예로 ASCII, utf-8, cp949가 있다. 컴퓨터는 문자를 숫자로 인식한다. ASCII 코드로 변환하면 A 65, a 97이 되며, 현재 전세계적으로 웹에서 사용되는 국제 표준은 UTF-8 (Universal code character set Transformation Format - 8-bit)이다. UTF-8에선 a는 1바이트로, '가'는 3바이트로 인식한다. 이를 가변 인코딩 방식이라고 하며, 영어보다 한글이 더 많은 데이터를 필요로 한다.

 

s = 'abcdef'
s[1]
'b'
phone = '삼성 갤럭시'
usage = 83.5888

# 1) print formatting
print("%s 배터리가 %.2f%% 남았습니다." % (phone, usage))

# 2) str.format
print("{} 배터리가 {:.2f}% 남았습니다.".format(phone, usage))

# 3) f-string (**)
print(f"{phone} 배터리가 {usage:.2f}% 남았습니다.")
# 문자열  나누기 split()
s = "Life is too short."
s.split('too') # token
['Life is ', ' short.']
# 문자열 바꾸기 replace() 
s = "Life is too short."
s = s.replace("Life", "This pencil")
s = s.replace(" ", "")
'Thispencilistooshort.'

 

리스트 (List)

 

순서가 있는 수정가능한 객체의 집합이다. 수정, 삭제, 추가가 가능하고, [] 대괄호로 작성되어지며, 내부 원소는 ,로 구분한다.

 

a = [1, 3 , 5, 7]
a[0]
--> 1

 

튜플 (Tuple)

 

tuple은 불변한 순서가 있는 객체의 집합이다. list형과 비슷하지만 한 번 생성되면 값을 변경할 수 없다.

 

t = (1, "a", 2, 3)
t
--> (1, 'a', 2, 3)

 

사전 (Dictionary)

 

dictionary 타입은 immutable한 키 (key)와 mutable한 값 (value)으로 맵핑되어 있는 순서가 없는 집합이다.

 

newdict = dict(a = 1, b = 2, c= 3, c = 4)
newdict
--> {'a': 1, 'b': 2, 'c': 3, 'd': 4}

 

연산자

 

연산자는 피연산자의 값을 조작할 수 있는 구조이다. 산술 연산자, 비교 연산자, 할당 연산자, 논리 연산자, Bitwise 연산자, 멤버쉽 연산자, identity 연산자를 지원한다.

 

 

 

728x90
반응형
LIST

'Programming > Python' 카테고리의 다른 글

06. 함수 (Function)  (0) 2021.12.08
05. 제어문 (If, For, While)  (0) 2021.12.08
04. 표준입출력  (0) 2021.12.08
03. 자료형을 이용한 자료관리  (0) 2021.12.08
01. Intro  (0) 2021.12.08