프로그래머스 파이썬 기초 해석 :: 특수문자 출력하기 (raw string)
프로그래머스 URL
https://school.programmers.co.kr/learn/courses/30/lessons/181948#
프로그래머스 코딩테스트 카테고리
코딩 기초 트레이닝
Day 1 출력
Lv.0
문제 설명
아래 특수문자 출력하기
!@#$%^&*(\'"<>?:;
문제 이해
\ (백슬러시) ' (작은따음표) " (큰따음표)는 파이썬에서 특별한 기능을 하는 문자이므로, 충돌을 주의해야한다.
문자열을 표현할때 list = " ~~~" 또는 ' ~~~ ' 처럼 따음표 세트를 써서 열고 닫는다.
그래서, 이 문자열을 표현하는 따음표 세트랑 안에서 문자 그자체로 쓰는 따음표를 비교하기 위해서는 백슬러시(\) 를 쓴다.
즉, \ 는 \n, \t와 같이 줄바꿈, 탭 역할을 하기도 하고
문자열 안에서 \' , \" 처럼 따음표랑 같이 썼을때는 문자열 속에서 ' 또는 " 를 표현하기로 쓴다.
문제점
1) !@#$%^&*(\'"<>?:; 를 표현할때 중간에 있는 \가 바로 뒤에있는 작은따음표랑 붙어서-> \' 가 되는것
2) 출력할때 양옆을 따음표 세트로 채워야 하는데, 중간에 있는 따음표 들이랑 충돌
문제 해답
print('!@#$%^&*(\\\'"<>?:;')
문자열을 감쌀 때, 따음표 세트 ' ~ ' , " ~ " 로 하는게 대부분이지만, '''~ ''', """ ~ """ 따음표 세개를 연달아서 하는 세트도 있음
그래서, 따음표 삼세트로 문자열을 닫아서 안에 있는 따음표랑 구분 지을 수 있다.
그리고, 안에있는 백슬러시는 \\로 표현해야 \가 출력됨
print("""!@#$%^&*(\\'"<>?:;""")
print('''!@#$%^&*(\\'"<>?:;''')
문자열 앞에 r이 붙으면 그 문자열 안의 모든 '\' 문자가 자동으로 '\\' 문자로 치환한다.
댓글
댓글 쓰기