article thumbnail image
Published 2022. 3. 21. 23:09

문자열

  • 파이썬은 문자열을 기본 타입으로 지원하며, 문자열 조작을 위한 다양한 명령 제공
  • 문자열을 구성하는 개별 문자를 읽을 때는 [] 괄호와 문자의 위치인 첨자를 이용
  • 첨자는 앞에서 셀 수도 있고 뒤에서 셀 수도 있음
  • 앞에서 셀 때는 0부터 시작하며 뒤로 갈수록 1씩 증가
  • 뒤에서 셀 때는 음수를 사용. 제일 마지막 문자가 -1번이며 앞으로 갈수록 1씩 감소

  • 첨자는 반드시 문자열의 길이 범위 안이어야 함 → 범위를 벗어나면 에러 발생
  • 문자열은 문자로 구성된 리스트(그러나 immutable)의 일종이어서 for문으로 순회 가능
s = 'python'
print(s[2]) # 앞에서 세기
print(s[-2]) # 뒤에서 세기
for c in s: # 문자열 내부를 for문으로 순회 가능
  print(c, end = ',')
더보기

t

o

p,y,t,h,o,n,

s = 'python' # 문자열 초기화
s[2] = 'k' # 변경을 시도하면 에러 발생!
더보기
Traceback (most recent call last):
  File "stridx2.py", line 2, in <module>
    s[2] = 'k'
TypeError: 'str' object does not support item assignment

 

  • 파이썬의 문자열은 Immutable
  • 개별 문자를 읽을 수는 있지만, 다른 문자를 대입하거나 삽입, 삭제할 수 없음
  • 메모리 절약 및 속도 개선을 위함

 

프로그래머스 lev1 핸드폰 번호 가리기

 

작성 코드

def solution(phone_number):
    answer = ''
    p_len = len(phone_number)
    for i in range(p_len):
        if i < p_len - 4:
            answer += '*' 
        else:
            answer += phone_number[i]
    return answer

 

다른 풀이

def solution(phone_number):
    return '*' * (len(phone_number) - 4) + phone_number[-4:]

 

'프로그래밍 > Python' 카테고리의 다른 글

[Python] sort, join  (0) 2022.03.26
[Python] module  (0) 2022.03.23
[Python] 2차원 리스트, zip  (0) 2022.03.20
[Python] 리스트  (0) 2022.03.19
[Python] map, input, strip, split  (0) 2022.03.18
복사했습니다!