Day20, 21. 5/22, 23일 자료구조 01

이동은·2023년 5월 24일
post-thumbnail

오늘의 목표

  • 자료구조 파트 1~9 끝내기

오늘의 달성목표

  • 자료구조 파트 1~4 완료

오늘을 마치며

  • 기초수학을 지나 자료구조에 들어와서 데이터를 컨테이너 구조로 묶음하는게 신기했다. 나중에 방대한 자료들을 하나의 리스트로 정의하는 날 까지 열심히 배워야겠다.

자료구조

  • 여러 개의 데이터가 묶여있는 자료형을 컨테이너 자료형이라고 하고, 이러한 컨테이너 자료형의 데이터 구조를 자료구조라고 한다.

다양한 자료구조

  • 자료구조는 각각의 컨테이너 자료형에 따라서 차이가 있으며 파이썬의 대표적인 컨테이너 자료형으로는 리스트(LIst), 튜플(Tuple), 딕셔너리(Dic), 셋트(Set)가 있다.
  • tuple의 데이터는 수정할 수 없다.
  • set은 중복된 데이터가 존재할 수 없다.

리스트(List)

  • []를 이용해서 선언하고, 데이터 구분은 ' , '를 이용한다.
  • 리스트 안에는 숫자, 문자(열), 논리형 등 모든 데이터를 같이 저장할 수 있다.
  • format선언시 리스트는 []안에 아이템이 나열되어 출력된다.

인덱스(index)

  • 아이템에 자동으로 부여되는 번호표
    ex) ['홍길동', '박찬호', '이영표', '손흥민', '박지성'] 중에 홍길동을 0으로 박지성은 4번으로 나타낸다.

리스트의 길이

  • 리스트의 길이는 len()함수를 통하여 출력할 수 있음

리스트와 for문

  • for문을 이용하면 리스트의 아이템을 자동으로 참조할 수 있다.
  • list는 for문과 밀접한 관계가 있다.

리스트와 while문

  • while문을 이용하면 다양한 방법으로 아이템 조회가 가능하다.

enumerate()함수

  • enumerate()함수를 이용하면 아이템을 열거할 수 있다.

아이템 추가 하기

  • append()함수를 이용하면 마지막 인덱스에 아이템을 추가할 수 있다.
  • insert()함수를 이용하면 특정 위치에 아이템을 추가할 수 있다.
  • pop()함수를 이용하면 마지막 인덱스에 해당하는 아이템을 삭제할 수 있다.
  • remove()함수를 이용하면 특정 아이템을 삭제할 수 있다.
  • remove()는 한 개의 아이템만 삭제 가능. 만약 삭제하려는 데이터가 2개 이상이라면 while문을 이용해야한다.

리스트 연결

  • extend()함수를 이용하여 리스트에 또 다른 리스트를 연결(확장)할 수 있다.
  • a,b를 extend를 이용하여 연결하면 a는 연장 b는 그대로 표시됨
  • 덧셈 연산자를 이용하여 리스트를 연결할 수도 있다.

리스트 아이템 정렬

  • sort()함수를 이용하면 아이템을 정렬할 수 있다.
  • sort(reverse=True)를 이용하면 내림차순 정렬도 가능하다.

아이템 순서 뒤집기

  • reverse()함수를 이용하면 아이템 순서를 뒤집을 수 있다.

리스트 슬라이싱

  • [n:m]을 이용하면 리스트에서 원하는 아이템만 뽑아낼 수 있다.
  • [:m]을 표시하면 인덱스[0]부터 m앞까지 반대로
    [n:]인덱스[n]부터 끝까지 출력된다.
  • -를 사용하면 인덱스 맨마지막부터 출력된다.
  • 문자열, 숫자 등도 슬라이싱 할 수 있다.
  • 슬라이싱 할 때 단게를 설정할 수 있음
  • 슬라이싱을 이용해서 아이템을 변경할 수 있음
  • slice()함수를 이용해서 아이템을 슬라이싱 할 수 이씀

[본 글의 내용 중 일부는 제로베이스 데이터스쿨 강의자료 중 일부 내용이 포함되어 있습니다.]

profile
또 다른 나를 찾아서

0개의 댓글