개발일기

Python - 자료형에 대한 정리 본문

프로그래밍 언어/Python

Python - 자료형에 대한 정리

Flashback 2021. 11. 25. 12:02
728x90
반응형

Python의 기본 자료형

  • 정수형(Integer) : 1, 2, 3, -1, -2, -3 과 같이 소수가 포함되지않은 양수/음수의 자료형
  • 실수형(Float) : 1.0, 1.5, 2.3, 3.6, -1.0, -1.5, -2.2 와 같이 소수점이 포함되어있는 실수형
  • 참 / 거짓 (bool) : True, False - 참 거짓을 나타내는 자료형
  • 문자형(String) : (" ") 따옴표 안에 들어가있는 문자들의 자료형
  • 목록(List) : 다양한 데이터들을 자료형에 관계없이 추가한 목록형식의 자료형

 

  • Python의 타입 검사

type() : 인수에 변수명을 추가하면, 해당 변수의 데이터 타입을 확인가능한 파이썬의 내장 함수

 

  • 정수형(Integer)
a = 10  # 선언
type(a) # 변수 타입 확인
# <class 'int'>
  • 실수형(Float)
a = 1.1
type(a)
# <class 'float'>
  • 참/거짓(Bool)
a = 1 < 3 # 참 / 거짓 비교를 위해 정수 1과 3의 크기를 비교한다
type(a)
# <class 'bool'>
  • 문자형(String)
a = "text" # 문자열 추가
type(a)
# <class 'str'>
  • 목록형(List)
a = ["test1", "test2", "test3", 4]
# 목록형은 자료형의 일치여부와 상관없이 다양한 자료형으로 구성할 수 있다
type(a)
# <class 'list'>

List  자료형

연관있는 변수들을 따로따로 선언하는 것보다 하나의 리스트로 묶어서 선언하면 데이터를 더욱 효율적으로 관리할 수 있다.

List는 Sequence(순서)를 가진 자료형이며 Int, Float, String, 심지어는 같은 자료형인 List형식을 포함하여 하나의 리스트에 다양한 자료형을 추가하여 구성할 수 있다.

 

  • List의 인덱싱

리스트에 추가되는 데이터에는 인덱스값이 부여된다. 부여된 인덱스값을 통해 리스트에 할당된 값을 호출한다. 특이하게도 파이썬의 리스트 인덱싱에서는 음수를 지원한다.

a = [10, 20, 30, 40] # 리스트 변수 선언

# 인덱스가 양수, 0인 경우 순차적으로 리스트 변수 값을 호출한다
print(a[0]) # 10
print(a[1]) # 20
print(a[2]) # 30
print(a[3]) # 40

# 인덱스가 음수일 경우, 역순으로 리스트 변수 값을 호출한다.
print(a[-1]) # 40
print(a[-2]) # 30
print(a[-3]) # 20
print(a[-4]) # 10

 

  • List의 슬라이싱

리스트의 인덱스 값을 기반으로 범위를 나누어 범위에 해당되는 부분적인 값들을 반환한다.

 

  • 양수, 0 슬라이싱
a[0:2] # [10, 20]
# 인덱스 0부터 2까지의 값을 반환한다. 즉, 인덱스가 0, 1인 값을 반환한다.

a[:2] # [10, 20]
# 인덱스를 0부터 시작하여 값을 나눌 경우, 0을 생략할 수 있다.

a[2:] # [30, 40]
# 인덱스 시작값을 지정하였지만 마지막 값을 지정하지 않은 경우, 범위를 리스트의 마지막까지로 지정되어 반환한다.

 

  • 음수 슬라이싱
a[0:-1] # [10, 20, 30]
# a[-1]의 값은 40이다. a[-1]과 a[3]의 값은 동일하다
# 즉 a[0:3]로 슬라이싱한 것과 같은 값을 반환한다

a[:-2] # [10, 20] -> a[:2]와 동일

a[-3:] # [20, 30, 40] -> a[1:]과 동일
# a[-3]은 값이 20. 값이 20인 인덱스부터 마지막 인덱스까지 슬라이싱을 하기에 a[1:]과 동일하다

 

  • 리스트의 주요 연산 목록
len 리스트의 길이를 가져옴 len(a)
reverse  리스트를 역순으로 변경함 a.reverse()
sort 리스트를 정렬함(오름차순) a.sort()
count 해당 값이 리스트에 몇개나 존재하는지 나타냄 a.count(1) # 1이 몇개인지
append 리스트의 맨 마지막에 값을 추가 a.append(25) # 인덱스값이 추가됨
remove 해당하는 값을 제거함 a.remove(50) # 50을 제거
- 인덱스 당겨짐
pop 맨 마지막값을 한 번 반환한 후, 제거함 a.pop() # 마지막값 반환 후, 제거
del  인덱스값을 통해 값을 제거함 del b[2] # 인덱스가 2인 값 제거
insert 해당하는 위치에 값을 추가함 b.insert( index, vaue)
# index위치에 value를 추가
# 인덱스 값이 밀려남
max, min 최댓값, 최솟값을 구함 max(a)
min(a)
# a 리스트의 최댓값, 최솟값 반환

Tuple 자료형

튜플(Tuple)은 리스트와 비슷한 특징을 가지고 있다. 약간의 차이점이 존재한다.

튜플(Tuple) 리스트(List)
튜플의 요소를 변경하거나 삭제할 수 없다. 리스트의 요소를 변경하거나 삭제할 수 있다.
소괄호()를 사용하여 감싼다. 대괄호[]를 사용하여 감싼다.
괄호 부호없이 값들을 나열하면 튜플을 생성할 수 있다.
ex) tuple1 = 1, 2, 3 -> type(tuple1) -> <class 'tuple'>
리스트를 생성하기 위해서는 반드시 대괄호 안에 값들을 나열해야 한다.

이러한 특징으로 인해, 튜플은 요소의 값의 변경이나 삭제를 방지하기 위해 생성하여 활용하게 된다.

 

튜플 생성시, 값을 하나만 추가할 경우 반드시 콤마를 붙여 생성하여야 한다.

tuple1 = (1,) # O
tuple1 = (1) # X -> int형으로 선언된다

Dict 자료형

https://phsun102.tistory.com/33

 

Python - Dict 자료형이란?

0. Dict 타입이란?? 파이썬에는 특별한 자료형인 Dict 타입이 있다. 이 타입은 Key, value 형식으로 이루어진 데이터 타입 중 하나이다. 이름이 Dict라고 정해진 이유는 Key : Value 형식으로 값이 지정된

phsun102.tistory.com

블로그의 내용을 참조하면 된다!

 

 


집합 자료형 Set

집합자료형은 set키워드를 사용하여 만들 수 있다.

set([10, 20, 30]) # set
# {10, 20, 30}

set("James")
# {'a', 'e', 'm', 'J', 's'}

set("PHP")
# {'H', 'P'}

 

집합 자료형 set의 특징

  • 중복된 값을 허용하지 않는다 (위의 set("PHP")의 경우 참조)
  • 정해진 순서가 없다 (위의 set("James"), set("PHP")의 경우 참조)

 

집합 자료형 set의 활용

set자료형은 집합과 관련된 것을 처리할 때 사용하기 적합한 자료형이다. 예를 들어 교집합, 합집합, 차집합을 예로 들 수 있다.

set1 = set([1, 2, 3, 4, 5])
set2 = set([3, 4, 5, 6, 7])
# set 변수 생성

 

  • 교집합
set1 & set2
set1.intersection(set2)
# {3, 4, 5}

 

  • 합집합
set1 | set2
set1.union(set2)
# {1, 2, 3, 4, 5, 6, 7}

 

  • 차집합
set1 - set2
set1.difference(set2)
# {1, 2}

set2 - set1
set2.difference(set1)
# {6, 7}
728x90
반응형

'프로그래밍 언어 > Python' 카테고리의 다른 글

Python - for 반복문과 enumerate 함수  (0) 2021.11.26
Python - 함수정의  (0) 2021.11.25
Python - Dict 자료형이란?  (0) 2021.09.17
Python - json 형식  (0) 2021.09.16
Python - pip, pip3의 차이점  (0) 2021.09.16
Comments