python 데이터 구조

김동완·2022년 4월 13일
0
post-thumbnail

순서가 있는 데이터 구조

문자열

  • 문자들의 나열

    • 모든 문자는 str타입
  • 문자열은 작은 따옴표('')나 큰 따옴표("")를 활용하여 표기

  • immutable하다 -> 인덱스를 이용하여 값을 변경하는 것이 불가능

  • 문법

    • s.find(x) x의 첫 번째 위치를 반환. 없으면, -1을 반환
    • s.index(x) x의 첫 번째 위치를 반환. 없으면, 오류 발생
    • s.isalpha() 알파벳 문자 여부
      • 단순 알파벳이 아닌 유니코드 상 letter(한국어 포함)
    • s.isupper() 대문자 여부
    • s.islower() 소문자 여부
    • s.istitle() 타이틀 형식 여부

is가 붙어있으면 boolean()형식으로 True, False 를 반환

'apple'.find('p') #첫번째 위치만 반환 ! 
## 1
'apple'.find('p',2)
##2 

'apple'.find('k')
## -1 
'apple'.index('p')
## 1
'apple'.index('k')
## ValueError : substring not found
'abc'.isalpha()
## True
'ㄱㄴㄷ'.isalpha()
## True
'Ab'.isupper()
## False
'ab'.islower()
## True
'Title Title!'.istitle()
## True
  • 문자열 변경 메소드

    • s.replace(old, new[,count]) 바꿀 대상 글자를 새로운 글자를 바꿔서 반환

    • s.strip([chars]) 공백이나 특정 문자를 제거

    • s.split(sep = None, maxsplit = -1) 공백이나 특정문자를 기준으로 분리해서 리스트로 반환

      • map(int,input().split())
    • 'separator'.join([iterable]) 구분자로 iterable을 합침

    • s.capitalize() 가장 첫 번째 글자를 대문자로 변경

    • s.title() ''나 공백 이후를 대문자로 변경

    • s.upper() 모두 대문자로

    • s.lower() 모두 소문자로

    • s.swapcase() 대 <-> 소문자 서로 변경

'coone'.replace('o','a')
##'caane'
'woooowoo'.replace('o',!,2)
## 'w!!ooowoo'
'            와오!\n'.strip()
## '와오!'
'            와오!\n'.lstrip()
## '와오!\n'
'            와오!\n'.rstrip()
## '     와오!'
'안녕하세요????'.rstrip('?')
## '안녕하세요'
'a,b,c'.split('_')
## ['a','b','c']
'a b c'.split()
## ['a', 'b', 'c']
'!'.join('hello')
## 'h!e!l!l!o'
' '.join(['3'. '5'])
## '3 5'
numbers = ['1','2','3']
print(' 'join(numbers))
## 1 2 3

리스트

  • 문법

    • lst.append()
    • lst.insert(i인덱스에 x삽입)
    • lst.extend(iterable)
    • lst.remove(x) 리스트 가장 왼쪽에 있는 항목(첫 번째)x를 제거
    • lst.pop()리스트 가장 오른쪽에 있는 항목을 반환 후 제거
    • lst.pop(i) 리스트 인덱스 i에 있는 항목을 반환 후 제거
    • lst.extend(m) 순회형 m의 모든 항목들의 리스트 끝에 추가
    • lst.index(x,start,end) 리스트에 있는 항목 중 가장 왼쪽에 있는 항목 x의 인덱스 반환
    • lst.reverse() 리스트를 거꾸로 정렬 #sort랑은 다름 자체의 순서를 바꿈
    • lst.sort()리스트를 정렬
    • lst.count(x) 리스트에서 항목 x가 몇 개 존재하는지 갯수를 반환

튜플

  • 순서를 가지는 0개 이상의 객체를 참조하는 자료형
  • 항상 소괄호 형태로 출력

순서가 없는 데이터 구조

  • 순서없이 0개 이상의 해시 가능한 객체를 참조하는 자료형
    • 해사 가능한 객체(불변자료형)만 담을 수 있음.
  • 담고있는 객체를 삽입 변경, 삭제 가능 -> 가변자료형(mutable)
profile
내가 공부한 내용들이 누군가에게 도움이 될지 몰라서 쓰는 벨로그

0개의 댓글

관련 채용 정보