Python - 문자열 & ASCII

수현·2023년 9월 30일
0

Python

목록 보기
4/11

문자열 조작

문자열은 immutable(변경 불가능한) 자료형!

사용 시 원본 자체를 바꾸지 못하고 변경한 값을 리턴

슬라이싱

abcdef
index012345
index-6-5-4-3-2-1
  • s[2:5:2] = 'ce'

  • s[-5:-1:3] = 'be'

  • s[2:5:-1] = ''

  • s[:] = 'abcdef'

  • s[::-1] = 'fedcba'

  • s[-3:] = 'def'

정규 표현식 Regular expression

정규 표현식

문자열 탐색/검증

  • s.find(x) : x의 첫 번째 위치를 반환, 없으면 -1 반환

  • s.index(x) : x의 첫 번째 위치를 반환, 없으면 오류 발생

  • s.isalpha() : 알파벳 문자 여부

  • s.isupper() : 대문자 여부

  • s.islower() : 소문자 여부

  • s.istitle() : 타이틀 형식 여부
    cf) 'is'가 붙으면 반환값이 boolean type

  • startswith() : 문자열이 지정된 문자/문자열로 시작하면 True, 아니면 False를 반환

  • endswith() : 문자열이 지정된 문자/문자열로 끝나면 True, 아니면 False를 반환

    s = 'Hello Python!'
    print(s.startswith('Hel'))
    print(s.endswith('!'))

문자열 변경

  • s.replace(old, new, count) : 글자 바꾸기, count 지정 시 해당 개수만큼 시행

  • s.strip([chars])

    • strip('chars') : 문자열 앞/뒤의 'chars(문자)' 제거, 괄호가 빈 경우 공백('\n'포함) 제거
    • lstrip('chars') : left, 선행 문자 제거
    • rstrip('chars') : right, 후행 문자 제거
    text = ",,,,,123.....water....pp"
    print(text.lstrip(',123.p'))  # water....pp
    print(text.rstrip(',123.p'))  # ,,,,,123.....water
    print(text.strip(',123.p'))   # water

    인자로 여러 문자 전달 시 해당 위치의 일치하는 모든 문자 제거

  • s.split(sep=None) : 문자열을 특정한 단위로 나눠 리스트로 반환, sep 지정되지 않을 시공백 기준 분리

  • 'separator'.join([iterable]) : 컨테이너 요소들을 seperator로 합쳐 문자열 반환

    print(''.join(['3', '5']))  # 35
  • s.capitalize() : 첫 번째 글자 대문자로 변경

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

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

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

  • s.swapcase() : 대문자를 소문자로, 소문자를 대문자로 변경


아스키 코드

ASCII, American Standard Code for Information Interchange

미국 정보교환 표준 부호

  • 컴퓨터는 숫자만 이해할 수 있어 문자를 인코딩해야함

  • 1bit = 1byte이며 각 문자를 표현하는데 1byte 사용

  • 아스키코드 메서드

    • ord(문자) : 문자를 아스키코드로 변환

    • chr(아스키코드) : 아스키코드를 문자로 변환

profile
실패와 성장을 기록합니다 🎞️

0개의 댓글