Jin's Dev Story

[Python] 리스트, 튜플, 딕셔너리, 집합 본문

Programming Language/Python

[Python] 리스트, 튜플, 딕셔너리, 집합

woojin._. 2024. 6. 12. 09:08

리스트

  • 생성, 삭제, 수정 가능
  • 행과 열로 구성된 배열의 형태로 주어진 데이터를 처리하고자 할 때 사용
  • 데이터의 집합이라고도 할 수 있으며 하나의 묶음으로 표현하여 관리를 쉽게 하고자 사용
a = []  # 요소가 비어있는 리스트 선언
b = [88, 197, 65]   # 숫자형
c = ['spring', 'summer', 'fall', 'winter']   # 문자열형
d = [3.14, 85, 'Monday', 98]    # 숫자형과 문자열형
e = [101, 102, ['spring', 'summer']]   # 2차원 리스트 선언 (2행 2열)
  • 단열 리스트 정의
a = ['one', 2, 3.0]
a[0]

>>> 'one'

a[1] + a[2]
>>> 5.0

# 리스트의 맨 마지막 요소 출력 -> a[2]와 같음
a[-1]
>>> 3.0
  • 이중 리스트 정의
a = [1, 2, 3, ['One', 'Two', 'Three']]
a[0]

>>> 1

# 맨 마지막 요소 출력 -> a[3]과 같음
a[-1]
>>> ['One', 'Two', 'Three']

# 맨 마지막 요소 중 첫 번째 요소 출력 -> a[3][0]과 같음
a[-1][0]
>>> 'One'

# 맨 마지막 요소 중 마지막 요소 출력 -> a[3][2]와 같음
a[-1][-1]
>>> 'Three'
  • 삼중 리스트 정의
# 맨 마지막 요소 중 첫 번째 요소 출력
a = [101, 102, ['a', 'b', ['Spring', 'Summer']]]
a[2][2][0]
>>> 'Spring'

함수

str(인덱스값) 함수

  • 리스트 연산을 위한 강제 타입 변환
  • 정수 또는 실수를 강제로 문자열 타입으로 변환
a = [11, 12, 13]
a[2] + "회"
>>> 에러 발생

str(a[2]) + "회"
>>> '13회'

extend() 함수

  • 리스트 확장
  • 리스트 데이터 타입만 허용
    • 새로운 리스트를 맨 마지막 요소에 추가 시 사용
a = [101, 102, 103]
a.extend([201, 202])
a
>>> [101, 102, 103, 201, 202]

append() 함수

  • 리스트 요소 추가
  • 모든 데이터 타입 대상
a = ['one', 'two']
a.append('three')
a
>>> ['one', 'two', 'three']

insert(a, b) 함수

  • 기존 리스트에 요소의 위치를 지정하여 추가
a = [101, 102, 103]
a.insert(1, 201)
a
>>> a[101, 201, 102, 103]

sort()

  • 정렬

reverse()

  • 역순으로 정렬

index()

  • 위치 값 반환

remove()

  • 첫 번째로 나오는 문자를 삭제

pop()

  • 맨 마지막 요소 반환 후 삭제

count()

  • 리스트에 포함된 요소의 개수 반환

튜플

  • 값 변경 불가능
  • 주어진 값이 변화되지 않고 항상 동일하게 적용
tp1 = ()
tp2 = (101, ) # 요소의 값을 하나만 선언할 때는 반드시 콤마 붙여야 함
tp3 = (1101, 102, 103)
tp4 = 201, 202, 203
tp5 = ('one', 'two', 'three')
  • 슬라이싱
tp = (101, 102, 'one', 'two')
tp[1:2]
>>> (102, )

딕셔너리

  • ‘key:value’와 같이 하나의 쌍으로 이루어진 형태로 요소 값을 구함
  • 해시 또는 연관 배열이라고 함
d1 = {'id':'cskisa', 'passwd':123456'}
d2 = {101:'smart', 102:'graphic'}

딕셔너리 추가

a = {101:'smart'}
a[201] = 'graphic'
a
>>> {101:'smart', 102:'graphic'}

keys() 함수

  • key 리스트 만들기
a = {'id':'cskisa', 'passwd':123456'}
a.keys()
>>> dict_keys(['id', 'pw'])

list(a.keys())  # dict_keys 객체를 리스트로 변환할 때 사용
>>>['id', 'pw']

values() 함수

  • value 리스트 만들기
a = {'id':'cskisa', 'passwd':123456'}
a.values()
>>> dict_values(['cskisa', 123456])

list(a.values())
>>> ['cskisa', 123456]

items() 함수

  • 딕셔너리의 요소를 key:value 쌍으로 추출하기
a = {'id':'cskisa', 'passwd':123456'}
a.items()
>>> dict_values([('id', 'cskisa'), ('pw', 123456)])

list(a.items())
>>> [('id', 'cskisa'), ('pw', 123456)]

get() 함수

  • 딕셔너리의 요소를 key로 value 추출하기
a = {'id':'cskisa', 'passwd':123456'}
a.get('id')
>>> 'cskisa'

# 존재하지 않는 key 값 적용 시 오류 발생

in 함수

  • 딕셔너리의 요소에 key가 존재하는지 조사하기
a = {'id':'cskisa', 'passwd':123456'}
'name' in a
>>> False

'pw' in a
>>> True

clear() 함수

  • 모든 요소 전부 지우기
a = {'id':'cskisa', 'passwd':123456'}
a.clear()
a
>>> {}

집합

  • 순서 없음, 중복 허용 안됨
s1 = set([1, 'two', 3])
s1
>>> {1, 3, 'two'}
  • 중복되는 교집합 → & 연산자 또는 intersection() 함수
  • 집합을 합치는 합집합 → | 또는 union 함수
  • 하나의 집합에서 다른 집합을 빼는 차집합 → - 또는 difference() 함수

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

[Python] Math.gcd - 최대공약수  (0) 2024.06.12
[Python] 내장 함수  (0) 2024.06.12
[Python] 제어문 & 반복문  (0) 2024.06.12
[Python] 데이터와 파일 입출력  (0) 2024.06.12
[Python] 자료형  (0) 2024.06.12