파이썬 자료구조

chan_hari·2025년 2월 14일

파이썬

목록 보기
4/10

-리스트
-튜플
-딕셔너리
-세트

리스트

열거형 자료구조
순서대로 값을 저장
배열과 유사 
++ 파이썬의 언어적 특징으로 인해 각 요소들이 다른 데이터 타입으로 구성되어도 상관 없음 

<리스트 정의>

<리스트 요소 에 접근하기>
요소: 리스트의 각 항목
문자열에서 처럼, 리스트[인덱스]로 접ㄱㄴ
문자열에서 처럼, 슬라이싱도 가능

<리스트 화ㄹ용>
복합 리스트: 리스트의 요소로 리스트를 사용 가능

기본함수

  • 리스트 길이 구하기 : len(['l','f'])

  • 최대 값 구하기 : max([1,2,3,4])

  • 최소값 구하기 : min([1,2,3,4])

    요소찾기

    s = ['l','i','s','t']
    
    s.index('i')
    #1
    't' in s //특정 인덱스가 있는지 없는지 여부를 불리언 값으로 
    #true
    'x' not in s
    #true
    s.count('l') // 특정 엘리먼트가 해당 리스트에 몇개가 있는지 갯수 세는거 
    #1
    

    요소 수정하기

    append() :  요소 추가하기 
    insert() : 요소 삽입하기
    extend() : 요소 확장하기
    del,remove() : 요소 제거하기
    pop() : 요소 꺼내고 제거하기 
    sort() :오름 차순 정렬
    reverse() : 원래 리스트 반대로 정렬

튜플

열거형 자료구조
순서대로 값을 저장
배열과 유사
불변속성(변경을 가할수 없음)

<가변? 불변?>

가변 데이터 타입
-정의된 이후에도 변경이 자유로움
-데이터의 유연성을 제공
-열거형 가변 데이터 타입:list
불변 데이터 타입
- 변수의 값을 변경 할 수 없음
-데이터의 무결성을 보장함
- 열거형 불변 데이터타입 :str,tuple

Q. 문자열은 왜 불변인가?
문자열을 직접 변경할수는 없지만, 새로운 문자열을 만들어 변경된 것 처럼 보이게 할 수는 있음
문자열이 불변 하기 때문에 원래 문자열을 수정하는 것이 아니라 새로운 문자열 객체를 생성하여 할당하는 방식으로 동작

<튜플 정의하기>
-괄호'()'를 사용하고, 각 항목은 쉼표 ','로 구분

  • 비어있는 튜플 만들기
  • 한개의 요소만 가지는 튜플 만들기

<튜플 요소에 접근하기>

  • 리스트/문자열에서 처럼, 튜플[인덱스]로 접근
  • 리스트/문자열에서 처럼, 슬라이싱도 가능

<튜플 활용>
-기본함수 활용 가능( ex)len,max,min
-요소 찾기 가능

<튜플의 아주 큰 특징!!!!>
-패킹 : 여러값을 하나의 튜플로 묶는것
ex) tp = 1,2,3
-언패킹 : 하나의 튜플의 값을 여러 변수에 할당 하는 것
ex) tp = (1,2,3)
x,y,z = tp => x 값은 1 ,y값은 2 ,z값은 3 할당

<튜플의 언패킹 활용하기>

  • 언패킹 시, 불필요한 값들은 을 사용해 생략할 수 있음
    ex) x,
    ,_,y,z =(1,-1,0,2,5)
  • 언패킹시, 변수 중 하나에 *을 붙이면 남은 요소 전체를 리스트에 담아 대입

0개의 댓글