less than 1 minute read

문자열 조작

  • 문자열 조작 문자열을 원하는 대로 조작하는 연산
  • 람다 함수 선언 없이 함수를 사용 가능하게 해줌 많이 쓸 시 가독성 떨어질 수 있음
  • 정규식 정규 표현식은 문자열에 나타는 특정 문자 조합과 대응시키기 위해 사용되는 패턴 문자열에서 필터링이나 조건에 맞는 지 확인 가능
  • 정렬 나열된 원소를 원하는 대로 정렬하는 알고리즘 퀵 소트, 병합 소트, 팀 소트가 있음
    • 팀소트 파이썬이 채택하고 있는 정렬 만든 사람인 팀 피터스의 이름에서 따옴 실제 데이터는 대부분 이미 정렬되어 있을 것이다 라는 가정하에 실제 데이터에서 고성능을 낼 수 있도록 설계한 알고리즘 다른 정렬에 비해 점근 하한이 낮음 (n)
  • 슬라이딩 윈도우 투 포인터의 이용방법 슬라이딩 윈도우 처럼 이동해서 붙여짐
  • 유니코드와 UTF-8
    • ASCII 초기에 문자를 표현하던 방식 1바이트에 모든 문자 표현 한글이나 한자 같은 문자는 2개 이상의 특수 문자를 합쳐서 표현해서 깨지거나 제대로 표현되지 못 하는 경우 잦았음
    • 유니코드 2~4바이트 공간에 여유 있게 문자를 할당하는 방식 적은 바이트가 필요한 문자열도 고정되어 있어서 메모리 낭비가 심했음
    • UTF-8 유니코드의 가변 길이 문자 인코딩 방식 문자마다 가변길이의 바이트를 가짐
    • 파이썬의 유니코드 인코딩 UTF-8 인코딩은 각 문자마다 바이트 길이가 달라지므로 문자열 슬라이싱 같은 기능 제공 힘듦 문자열 단위로 다른 고정 길이 인코딩 방식 적용